---
Fuzzer filename: '/src/quickjs/fuzz/fuzz_compile.c'
All functions:
  Function list name: All functions
  Elements:
    - functionName:    JS_FreeValue
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 679
      functionLinenumberEnd: 686
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - __JS_FreeValue
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './quickjs.h:683,13'
          Dst:             __JS_FreeValue
    - functionName:    JS_IsException
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 639
      functionLinenumberEnd: 640
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    LLVMFuzzerTestOneInput
      functionSourceFile: '/src/quickjs/fuzz/fuzz_compile.c'
      linkageType:     externalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          260
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - JS_Eval
        - JS_EvalFunction
        - JS_FreeContext
        - JS_FreeRuntime
        - JS_FreeValue
        - JS_IsException
        - JS_NewContext
        - JS_NewRuntime
        - JS_ReadObject
        - JS_ResolveModule
        - JS_WriteObject
        - js_free
        - js_module_set_import_meta
        - js_std_await
        - js_std_dump_error
        - js_std_free_handlers
        - js_std_loop
        - reset_nbinterrupts
        - test_one_input_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzz/fuzz_compile.c:29,21'
          Dst:             JS_NewRuntime
        - Src:             'fuzz/fuzz_compile.c:30,22'
          Dst:             JS_NewContext
        - Src:             'fuzz/fuzz_compile.c:31,5'
          Dst:             test_one_input_init
        - Src:             'fuzz/fuzz_compile.c:37,19'
          Dst:             JS_Eval
        - Src:             'fuzz/fuzz_compile.c:40,9'
          Dst:             JS_IsException
        - Src:             'fuzz/fuzz_compile.c:41,9'
          Dst:             js_std_free_handlers
        - Src:             'fuzz/fuzz_compile.c:42,9'
          Dst:             JS_FreeValue
        - Src:             'fuzz/fuzz_compile.c:43,9'
          Dst:             JS_FreeContext
        - Src:             'fuzz/fuzz_compile.c:44,9'
          Dst:             JS_FreeRuntime
        - Src:             'fuzz/fuzz_compile.c:47,11'
          Dst:             js_std_await
        - Src:             'fuzz/fuzz_compile.c:49,25'
          Dst:             JS_WriteObject
        - Src:             'fuzz/fuzz_compile.c:50,5'
          Dst:             JS_FreeValue
        - Src:             'fuzz/fuzz_compile.c:52,9'
          Dst:             js_std_free_handlers
        - Src:             'fuzz/fuzz_compile.c:53,9'
          Dst:             JS_FreeContext
        - Src:             'fuzz/fuzz_compile.c:54,9'
          Dst:             JS_FreeRuntime
        - Src:             'fuzz/fuzz_compile.c:57,11'
          Dst:             JS_ReadObject
        - Src:             'fuzz/fuzz_compile.c:58,5'
          Dst:             js_free
        - Src:             'fuzz/fuzz_compile.c:59,9'
          Dst:             JS_IsException
        - Src:             'fuzz/fuzz_compile.c:60,9'
          Dst:             js_std_free_handlers
        - Src:             'fuzz/fuzz_compile.c:61,9'
          Dst:             JS_FreeContext
        - Src:             'fuzz/fuzz_compile.c:62,9'
          Dst:             JS_FreeRuntime
        - Src:             'fuzz/fuzz_compile.c:65,5'
          Dst:             reset_nbinterrupts
        - Src:             'fuzz/fuzz_compile.c:72,13'
          Dst:             JS_ResolveModule
        - Src:             'fuzz/fuzz_compile.c:73,13'
          Dst:             JS_FreeValue
        - Src:             'fuzz/fuzz_compile.c:74,13'
          Dst:             js_std_free_handlers
        - Src:             'fuzz/fuzz_compile.c:75,13'
          Dst:             JS_FreeContext
        - Src:             'fuzz/fuzz_compile.c:76,13'
          Dst:             JS_FreeRuntime
        - Src:             'fuzz/fuzz_compile.c:79,9'
          Dst:             js_module_set_import_meta
        - Src:             'fuzz/fuzz_compile.c:81,11'
          Dst:             JS_EvalFunction
        - Src:             'fuzz/fuzz_compile.c:82,9'
          Dst:             JS_IsException
        - Src:             'fuzz/fuzz_compile.c:83,9'
          Dst:             js_std_dump_error
        - Src:             'fuzz/fuzz_compile.c:85,9'
          Dst:             js_std_loop
        - Src:             'fuzz/fuzz_compile.c:87,5'
          Dst:             JS_FreeValue
        - Src:             'fuzz/fuzz_compile.c:88,5'
          Dst:             js_std_free_handlers
        - Src:             'fuzz/fuzz_compile.c:89,5'
          Dst:             JS_FreeContext
        - Src:             'fuzz/fuzz_compile.c:90,5'
          Dst:             JS_FreeRuntime
    - functionName:    JS_FreeValue
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 679
      functionLinenumberEnd: 686
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          35
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - __JS_FreeValue
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './quickjs.h:683,13'
          Dst:             __JS_FreeValue
    - functionName:    JS_IsException
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 639
      functionLinenumberEnd: 640
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    interrupt_handler
      functionSourceFile: '/src/quickjs/fuzz/fuzz_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22
      functionLinenumberEnd: 24
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    test_one_input_init
      functionSourceFile: '/src/quickjs/fuzz/fuzz_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_Eval
        - JS_EvalFunction
        - JS_FreeValue
        - JS_GetRuntime
        - JS_IsException
        - JS_SetInterruptHandler
        - JS_SetMaxStackSize
        - JS_SetMemoryLimit
        - JS_SetModuleLoaderFunc
        - interrupt_handler
        - js_init_module_os
        - js_init_module_std
        - js_module_loader
        - js_module_set_import_meta
        - js_std_add_helpers
        - js_std_await
        - js_std_dump_error
        - js_std_init_handlers
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzz/fuzz_common.c:33,5'
          Dst:             JS_SetMemoryLimit
        - Src:             'fuzz/fuzz_common.c:35,5'
          Dst:             JS_SetMaxStackSize
        - Src:             'fuzz/fuzz_common.c:37,5'
          Dst:             JS_SetModuleLoaderFunc
        - Src:             'fuzz/fuzz_common.c:37,5'
          Dst:             js_module_loader
        - Src:             'fuzz/fuzz_common.c:38,28'
          Dst:             JS_GetRuntime
        - Src:             'fuzz/fuzz_common.c:38,5'
          Dst:             JS_SetInterruptHandler
        - Src:             'fuzz/fuzz_common.c:38,5'
          Dst:             interrupt_handler
        - Src:             'fuzz/fuzz_common.c:39,5'
          Dst:             js_std_add_helpers
        - Src:             'fuzz/fuzz_common.c:42,5'
          Dst:             js_std_init_handlers
        - Src:             'fuzz/fuzz_common.c:43,5'
          Dst:             js_init_module_std
        - Src:             'fuzz/fuzz_common.c:44,5'
          Dst:             js_init_module_os
        - Src:             'fuzz/fuzz_common.c:49,23'
          Dst:             JS_Eval
        - Src:             'fuzz/fuzz_common.c:50,10'
          Dst:             JS_IsException
        - Src:             'fuzz/fuzz_common.c:51,9'
          Dst:             js_module_set_import_meta
        - Src:             'fuzz/fuzz_common.c:52,19'
          Dst:             JS_EvalFunction
        - Src:             'fuzz/fuzz_common.c:54,9'
          Dst:             js_std_dump_error
        - Src:             'fuzz/fuzz_common.c:56,15'
          Dst:             js_std_await
        - Src:             'fuzz/fuzz_common.c:57,5'
          Dst:             JS_FreeValue
    - functionName:    reset_nbinterrupts
      functionSourceFile: '/src/quickjs/fuzz/fuzz_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_finrec_unregister
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60635
      functionLinenumberEnd: 60660
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          102
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - JS_FreeValue
        - JS_GetOpaque2
        - JS_ThrowTypeError
        - js_free
        - js_same_value
        - js_weakref_free
        - js_weakref_is_live
        - js_weakref_is_target
        - list_del
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:60636,39'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:60644,10'
          Dst:             js_weakref_is_target
        - Src:             'quickjs.c:60645,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:60650,13'
          Dst:             js_weakref_is_live
        - Src:             'quickjs.c:60650,47'
          Dst:             js_same_value
        - Src:             'quickjs.c:60651,13'
          Dst:             js_weakref_free
        - Src:             'quickjs.c:60652,13'
          Dst:             js_weakref_free
        - Src:             'quickjs.c:60653,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:60654,13'
          Dst:             list_del
        - Src:             'quickjs.c:60655,13'
          Dst:             js_free
    - functionName:    JS_GetOpaque2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10642
      functionLinenumberEnd: 10647
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          23
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_GetOpaque
        - JS_ThrowTypeErrorInvalidClass
      functionUses:    41
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:10643,15'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:10645,9'
          Dst:             JS_ThrowTypeErrorInvalidClass
    - functionName:    js_weakref_is_target
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50997
      functionLinenumberEnd: 51013
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          40
      EdgeCount:       10
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:
        - Branch String:   'quickjs.c:50998,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    JS_ThrowTypeError
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7287
      functionLinenumberEnd: 7295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_ThrowError
      functionUses:    197
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7292,11'
          Dst:             JS_ThrowError
    - functionName:    js_weakref_is_live
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51018
      functionLinenumberEnd: 51024
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_IsUndefined
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51020,9'
          Dst:             JS_IsUndefined
    - functionName:    js_same_value
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15507
      functionLinenumberEnd: 15509
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
        - js_strict_eq2
      functionUses:    27
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:15509,26'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:15509,49'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:15508,12'
          Dst:             js_strict_eq2
    - functionName:    js_weakref_free
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51028
      functionLinenumberEnd: 51049
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          104
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - __assert_fail
        - js_free_rt
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51031,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:51042,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:0,0'
          Dst:             js_free_rt
    - functionName:    JS_FreeValue
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 679
      functionLinenumberEnd: 686
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          35
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - __JS_FreeValue
      functionUses:    1223
      BranchProfiles:  []
      Callsites:
        - Src:             './quickjs.h:683,13'
          Dst:             __JS_FreeValue
    - functionName:    list_del
      functionSourceFile: '/src/quickjs/./list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    28
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_free
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1438
      functionLinenumberEnd: 1440
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_free_rt
      functionUses:    126
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1439,5'
          Dst:             js_free_rt
    - functionName:    js_free_rt
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1390
      functionLinenumberEnd: 1392
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    79
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __JS_FreeValue
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6103
      functionLinenumberEnd: 6105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __JS_FreeValueRT
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:6104,5'
          Dst:             __JS_FreeValueRT
    - functionName:    __JS_FreeValueRT
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6032
      functionLinenumberEnd: 6100
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          103
      EdgeCount:       20
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeAtomStruct
        - JS_FreeValueRT
        - abort
        - free_zero_refcount
        - js_free_rt
        - list_add
        - list_del
      functionUses:    3
      BranchProfiles:
        - Branch String:   'quickjs.c:6047,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:6052,17'
          Dst:             JS_FreeAtomStruct
        - Src:             'quickjs.c:6057,17'
          Dst:             js_free_rt
        - Src:             'quickjs.c:6065,13'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:6066,13'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:6067,13'
          Dst:             js_free_rt
        - Src:             'quickjs.c:6076,17'
          Dst:             list_del
        - Src:             'quickjs.c:6077,17'
          Dst:             list_add
        - Src:             'quickjs.c:6080,21'
          Dst:             free_zero_refcount
        - Src:             'quickjs.c:6088,13'
          Dst:             js_free_rt
        - Src:             'quickjs.c:6094,13'
          Dst:             JS_FreeAtomStruct
        - Src:             'quickjs.c:6098,9'
          Dst:             abort
    - functionName:    JS_FreeAtomStruct
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2962
      functionLinenumberEnd: 3008
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          136
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - __assert_fail
        - atom_set_free
        - js_free_rt
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:2981,17'
          Dst:             __assert_fail
        - Src:             'quickjs.c:2993,25'
          Dst:             atom_set_free
        - Src:             'quickjs.c:3004,9'
          Dst:             js_free_rt
        - Src:             'quickjs.c:3007,5'
          Dst:             __assert_fail
    - functionName:    JS_FreeValueRT
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 689
      functionLinenumberEnd: 696
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          35
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - __JS_FreeValueRT
      functionUses:    72
      BranchProfiles:  []
      Callsites:
        - Src:             './quickjs.h:693,13'
          Dst:             __JS_FreeValueRT
    - functionName:    list_add
      functionSourceFile: '/src/quickjs/./list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __list_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './list.h:60,5'
          Dst:             __list_add
    - functionName:    free_zero_refcount
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6014
      functionLinenumberEnd: 6028
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          47
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - free_gc_object
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:6024,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:6025,9'
          Dst:             free_gc_object
    - functionName:    abort
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    58
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __assert_fail
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    156
      BranchProfiles:  []
      Callsites:       []
    - functionName:    free_gc_object
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5994
      functionLinenumberEnd: 6011
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          42
      EdgeCount:       16
      CyclomaticComplexity: 9
      functionsReached:
        - __async_func_free
        - abort
        - free_function_bytecode
        - free_object
        - js_free_module_def
      functionUses:    2
      BranchProfiles:
        - Branch String:   'quickjs.c:5995,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:5997,9'
          Dst:             free_object
        - Src:             'quickjs.c:6000,9'
          Dst:             free_function_bytecode
        - Src:             'quickjs.c:6003,9'
          Dst:             __async_func_free
        - Src:             'quickjs.c:6006,9'
          Dst:             js_free_module_def
        - Src:             'quickjs.c:6009,9'
          Dst:             abort
    - functionName:    free_object
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5940
      functionLinenumberEnd: 5991
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          128
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - free_property
        - get_shape_prop
        - js_free_rt
        - js_free_shape
        - list_add_tail
        - remove_gc_object
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5950,10'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:5952,9'
          Dst:             free_property
        - Src:             'quickjs.c:5955,5'
          Dst:             js_free_rt
        - Src:             'quickjs.c:5958,5'
          Dst:             js_free_shape
        - Src:             'quickjs.c:5974,5'
          Dst:             remove_gc_object
        - Src:             'quickjs.c:5977,13'
          Dst:             js_free_rt
        - Src:             'quickjs.c:5981,13'
          Dst:             list_add_tail
        - Src:             'quickjs.c:5986,13'
          Dst:             js_free_rt
    - functionName:    free_function_bytecode
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35698
      functionLinenumberEnd: 35739
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         38
      ICount:          194
      EdgeCount:       50
      CyclomaticComplexity: 14
      functionsReached:
        - JS_FreeAtomRT
        - JS_FreeContext
        - JS_FreeValueRT
        - free_bytecode_atoms
        - js_free_rt
        - list_add_tail
        - remove_gc_object
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:35709,9'
          Dst:             free_bytecode_atoms
        - Src:             'quickjs.c:35713,13'
          Dst:             JS_FreeAtomRT
        - Src:             'quickjs.c:35717,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:35721,9'
          Dst:             JS_FreeAtomRT
        - Src:             'quickjs.c:35724,9'
          Dst:             JS_FreeContext
        - Src:             'quickjs.c:35726,5'
          Dst:             JS_FreeAtomRT
        - Src:             'quickjs.c:35728,9'
          Dst:             JS_FreeAtomRT
        - Src:             'quickjs.c:35729,9'
          Dst:             js_free_rt
        - Src:             'quickjs.c:35730,9'
          Dst:             js_free_rt
        - Src:             'quickjs.c:35733,5'
          Dst:             remove_gc_object
        - Src:             'quickjs.c:35735,9'
          Dst:             list_add_tail
        - Src:             'quickjs.c:35737,9'
          Dst:             js_free_rt
    - functionName:    __async_func_free
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20413
      functionLinenumberEnd: 20429
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          62
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeValueRT
        - async_func_free_frame
        - js_free_rt
        - list_add_tail
        - remove_gc_object
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20417,9'
          Dst:             async_func_free_frame
        - Src:             'quickjs.c:20420,5'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:20421,5'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:20423,5'
          Dst:             remove_gc_object
        - Src:             'quickjs.c:20425,9'
          Dst:             list_add_tail
        - Src:             'quickjs.c:20427,9'
          Dst:             js_free_rt
    - functionName:    js_free_module_def
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29135
      functionLinenumberEnd: 29184
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          222
      EdgeCount:       43
      CyclomaticComplexity: 12
      functionsReached:
        - JS_FreeAtomRT
        - JS_FreeValueRT
        - free_var_ref
        - js_free_rt
        - list_add_tail
        - list_del
        - remove_gc_object
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:29138,5'
          Dst:             JS_FreeAtomRT
        - Src:             'quickjs.c:29142,9'
          Dst:             JS_FreeAtomRT
        - Src:             'quickjs.c:29143,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:29145,5'
          Dst:             js_free_rt
        - Src:             'quickjs.c:29150,13'
          Dst:             free_var_ref
        - Src:             'quickjs.c:29151,9'
          Dst:             JS_FreeAtomRT
        - Src:             'quickjs.c:29152,9'
          Dst:             JS_FreeAtomRT
        - Src:             'quickjs.c:29154,5'
          Dst:             js_free_rt
        - Src:             'quickjs.c:29156,5'
          Dst:             js_free_rt
        - Src:             'quickjs.c:29160,9'
          Dst:             JS_FreeAtomRT
        - Src:             'quickjs.c:29162,5'
          Dst:             js_free_rt
        - Src:             'quickjs.c:29163,5'
          Dst:             js_free_rt
        - Src:             'quickjs.c:29165,5'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:29166,5'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:29167,5'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:29168,5'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:29169,5'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:29170,5'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:29171,5'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:29172,5'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:29176,9'
          Dst:             list_del
        - Src:             'quickjs.c:29178,5'
          Dst:             remove_gc_object
        - Src:             'quickjs.c:29180,9'
          Dst:             list_add_tail
        - Src:             'quickjs.c:29182,9'
          Dst:             js_free_rt
    - functionName:    JS_FreeAtomRT
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3318
      functionLinenumberEnd: 3321
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          24
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __JS_AtomIsConst
        - __JS_FreeAtom
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3319,10'
          Dst:             __JS_AtomIsConst
        - Src:             'quickjs.c:3320,9'
          Dst:             __JS_FreeAtom
    - functionName:    free_var_ref
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5764
      functionLinenumberEnd: 5783
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          85
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - JS_FreeValueRT
        - __assert_fail
        - async_func_free
        - js_free_rt
        - remove_gc_object
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5766,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:5769,17'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:5772,17'
          Dst:             __assert_fail
        - Src:             'quickjs.c:5776,21'
          Dst:             async_func_free
        - Src:             'quickjs.c:5779,13'
          Dst:             remove_gc_object
        - Src:             'quickjs.c:5780,13'
          Dst:             js_free_rt
    - functionName:    remove_gc_object
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6148
      functionLinenumberEnd: 6150
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - list_del
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:6149,5'
          Dst:             list_del
    - functionName:    list_add_tail
      functionSourceFile: '/src/quickjs/./list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __list_add
      functionUses:    27
      BranchProfiles:  []
      Callsites:
        - Src:             './list.h:66,5'
          Dst:             __list_add
    - functionName:    __list_add
      functionSourceFile: '/src/quickjs/./list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    async_func_free
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20432
      functionLinenumberEnd: 20442
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          47
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - free_zero_refcount
        - list_add
        - list_del
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20435,13'
          Dst:             list_del
        - Src:             'quickjs.c:20436,13'
          Dst:             list_add
        - Src:             'quickjs.c:20438,17'
          Dst:             free_zero_refcount
    - functionName:    __JS_AtomIsConst
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2465
      functionLinenumberEnd: 2469
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __JS_FreeAtom
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3011
      functionLinenumberEnd: 3018
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeAtomStruct
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3017,5'
          Dst:             JS_FreeAtomStruct
    - functionName:    async_func_free_frame
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20362
      functionLinenumberEnd: 20373
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          56
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeValueRT
        - __assert_fail
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20367,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:20369,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:20371,5'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:20372,5'
          Dst:             JS_FreeValueRT
    - functionName:    free_bytecode_atoms
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31549
      functionLinenumberEnd: 31579
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          87
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - JS_FreeAtomRT
        - get_u32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:31571,20'
          Dst:             get_u32
        - Src:             'quickjs.c:31572,13'
          Dst:             JS_FreeAtomRT
    - functionName:    JS_FreeContext
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2353
      functionLinenumberEnd: 2421
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          192
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeValue
        - __assert_fail
        - js_free_modules
        - js_free_rt
        - js_free_shape_null
        - list_del
        - remove_gc_object
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:2359,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:2388,5'
          Dst:             js_free_modules
        - Src:             'quickjs.c:2390,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:2391,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:2393,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:2394,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:2396,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:2398,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:2398,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:2398,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:2398,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:2398,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:2398,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:2398,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:2398,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:2401,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:2403,5'
          Dst:             js_free_rt
        - Src:             'quickjs.c:2404,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:2405,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:2406,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:2407,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:2408,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:2409,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:2410,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:2412,5'
          Dst:             js_free_shape_null
        - Src:             'quickjs.c:2413,5'
          Dst:             js_free_shape_null
        - Src:             'quickjs.c:2414,5'
          Dst:             js_free_shape_null
        - Src:             'quickjs.c:2415,5'
          Dst:             js_free_shape_null
        - Src:             'quickjs.c:2416,5'
          Dst:             js_free_shape_null
        - Src:             'quickjs.c:2418,5'
          Dst:             list_del
        - Src:             'quickjs.c:2419,5'
          Dst:             remove_gc_object
        - Src:             'quickjs.c:2420,5'
          Dst:             js_free_rt
    - functionName:    js_free_modules
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2280
      functionLinenumberEnd: 2295
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          61
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - JS_FreeValue
        - list_del
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:2289,13'
          Dst:             list_del
        - Src:             'quickjs.c:2292,13'
          Dst:             JS_FreeValue
    - functionName:    js_free_shape_null
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4935
      functionLinenumberEnd: 4938
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          22
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - js_free_shape
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4937,9'
          Dst:             js_free_shape
    - functionName:    js_free_shape
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4928
      functionLinenumberEnd: 4932
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          26
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - js_free_shape0
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4930,9'
          Dst:             js_free_shape0
    - functionName:    js_free_shape0
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4908
      functionLinenumberEnd: 4925
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          80
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - JS_FreeAtomRT
        - JS_FreeValueRT
        - __assert_fail
        - get_alloc_from_shape
        - get_shape_prop
        - js_free_rt
        - js_shape_hash_unlink
        - remove_gc_object
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4912,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:4914,9'
          Dst:             js_shape_hash_unlink
        - Src:             'quickjs.c:4916,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:4918,10'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:4920,9'
          Dst:             JS_FreeAtomRT
        - Src:             'quickjs.c:4923,5'
          Dst:             remove_gc_object
        - Src:             'quickjs.c:4924,20'
          Dst:             get_alloc_from_shape
        - Src:             'quickjs.c:4924,5'
          Dst:             js_free_rt
    - functionName:    js_shape_hash_unlink
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4803
      functionLinenumberEnd: 4813
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_shape_hash
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4807,9'
          Dst:             get_shape_hash
    - functionName:    get_shape_prop
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4730
      functionLinenumberEnd: 4731
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    71
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_alloc_from_shape
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4725
      functionLinenumberEnd: 4726
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_shape_hash
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4754
      functionLinenumberEnd: 4755
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_u32
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    88
      BranchProfiles:  []
      Callsites:       []
    - functionName:    free_property
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5697
      functionLinenumberEnd: 5712
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          74
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - JS_FreeValueRT
        - free_var_ref
        - js_autoinit_free
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5701,17'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:5703,17'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:5705,13'
          Dst:             free_var_ref
        - Src:             'quickjs.c:5707,13'
          Dst:             js_autoinit_free
        - Src:             'quickjs.c:5710,9'
          Dst:             JS_FreeValueRT
    - functionName:    js_autoinit_free
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5686
      functionLinenumberEnd: 5688
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_FreeContext
        - js_autoinit_get_realm
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5687,20'
          Dst:             js_autoinit_get_realm
        - Src:             'quickjs.c:5687,5'
          Dst:             JS_FreeContext
    - functionName:    js_autoinit_get_realm
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5676
      functionLinenumberEnd: 5677
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    atom_set_free
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1937
      functionLinenumberEnd: 1938
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_DupValue
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 699
      functionLinenumberEnd: 704
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          22
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    396
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_strict_eq2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15371
      functionLinenumberEnd: 15491
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         64
      ICount:          272
      EdgeCount:       81
      CyclomaticComplexity: 19
      functionsReached:
        - JS_FreeValue
        - js_bigint_cmp
        - js_bigint_set_short
        - js_string_eq
        - js_string_rope_compare
        - tag_is_string
      functionUses:    12
      BranchProfiles:
        - Branch String:   'quickjs.c:15378,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:15394,18'
          Dst:             tag_is_string
        - Src:             'quickjs.c:15397,23'
          Dst:             js_string_eq
        - Src:             'quickjs.c:15400,24'
          Dst:             js_string_rope_compare
        - Src:             'quickjs.c:15474,22'
          Dst:             js_bigint_set_short
        - Src:             'quickjs.c:15478,22'
          Dst:             js_bigint_set_short
        - Src:             'quickjs.c:15481,20'
          Dst:             js_bigint_cmp
        - Src:             'quickjs.c:15488,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15489,5'
          Dst:             JS_FreeValue
    - functionName:    tag_is_string
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14695
      functionLinenumberEnd: 14696
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          19
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_string_eq
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4194
      functionLinenumberEnd: 4200
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          41
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - js_string_memcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4199,12'
          Dst:             js_string_memcmp
    - functionName:    js_string_rope_compare
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4369
      functionLinenumberEnd: 4414
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          139
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - js_string_memcmp
        - min_uint32
        - string_rope_get_len
        - string_rope_iter_init
        - string_rope_iter_next
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4375,12'
          Dst:             string_rope_get_len
        - Src:             'quickjs.c:4376,12'
          Dst:             string_rope_get_len
        - Src:             'quickjs.c:4381,11'
          Dst:             min_uint32
        - Src:             'quickjs.c:4382,5'
          Dst:             string_rope_iter_init
        - Src:             'quickjs.c:4383,5'
          Dst:             string_rope_iter_init
        - Src:             'quickjs.c:4384,10'
          Dst:             string_rope_iter_next
        - Src:             'quickjs.c:4385,10'
          Dst:             string_rope_iter_next
        - Src:             'quickjs.c:4389,13'
          Dst:             min_uint32
        - Src:             'quickjs.c:4390,13'
          Dst:             min_uint32
        - Src:             'quickjs.c:4391,15'
          Dst:             js_string_memcmp
        - Src:             'quickjs.c:4397,18'
          Dst:             string_rope_iter_next
        - Src:             'quickjs.c:4402,18'
          Dst:             string_rope_iter_next
    - functionName:    js_bigint_set_short
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11235
      functionLinenumberEnd: 11236
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_bigint_set_si
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:11236,12'
          Dst:             js_bigint_set_si
    - functionName:    js_bigint_cmp
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11996
      functionLinenumberEnd: 12022
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          81
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - js_bigint_sign
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:11998,14'
          Dst:             js_bigint_sign
        - Src:             'quickjs.c:11999,14'
          Dst:             js_bigint_sign
    - functionName:    js_bigint_sign
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11362
      functionLinenumberEnd: 11363
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    20
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_bigint_set_si
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11206
      functionLinenumberEnd: 11211
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    string_rope_get_len
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4360
      functionLinenumberEnd: 4365
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    min_uint32
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          16
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    string_rope_iter_init
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4335
      functionLinenumberEnd: 4338
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    string_rope_iter_next
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4342
      functionLinenumberEnd: 4357
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          68
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4353,9'
          Dst:             __assert_fail
    - functionName:    js_string_memcmp
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4175
      functionLinenumberEnd: 4189
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          76
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memcmp
        - memcmp16
        - memcmp16_8
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4180,19'
          Dst:             memcmp
        - Src:             'quickjs.c:4182,20'
          Dst:             memcmp16_8
        - Src:             'quickjs.c:4185,19'
          Dst:             memcmp16_8
        - Src:             'quickjs.c:4187,19'
          Dst:             memcmp16
    - functionName:    memcmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcmp16_8
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4152
      functionLinenumberEnd: 4160
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          40
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcmp16
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4163
      functionLinenumberEnd: 4171
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          40
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_IsUndefined
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 634
      functionLinenumberEnd: 635
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    192
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_ThrowError
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7263
      functionLinenumberEnd: 7273
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          43
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_GetFunctionBytecode
        - JS_ThrowError2
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7271,18'
          Dst:             JS_GetFunctionBytecode
        - Src:             'quickjs.c:7272,12'
          Dst:             JS_ThrowError2
    - functionName:    JS_GetFunctionBytecode
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5472
      functionLinenumberEnd: 5480
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          38
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - js_class_has_bytecode
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5477,10'
          Dst:             js_class_has_bytecode
    - functionName:    JS_ThrowError2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7239
      functionLinenumberEnd: 7259
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_DefinePropertyValue
        - JS_IsException
        - JS_NewObjectProtoClass
        - JS_NewString
        - JS_Throw
        - build_backtrace
        - vsnprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7243,5'
          Dst:             vsnprintf
        - Src:             'quickjs.c:7244,11'
          Dst:             JS_NewObjectProtoClass
        - Src:             'quickjs.c:7246,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:7251,32'
          Dst:             JS_NewString
        - Src:             'quickjs.c:7250,9'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:7254,13'
          Dst:             build_backtrace
        - Src:             'quickjs.c:7257,11'
          Dst:             JS_Throw
    - functionName:    vsnprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_NewObjectProtoClass
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5344
      functionLinenumberEnd: 5358
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          42
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_NewObjectFromShape
        - find_hashed_shape_proto
        - get_proto_obj
        - js_dup_shape
        - js_new_shape
      functionUses:    20
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5348,13'
          Dst:             get_proto_obj
        - Src:             'quickjs.c:5349,10'
          Dst:             find_hashed_shape_proto
        - Src:             'quickjs.c:5351,14'
          Dst:             js_dup_shape
        - Src:             'quickjs.c:5353,14'
          Dst:             js_new_shape
        - Src:             'quickjs.c:5357,12'
          Dst:             JS_NewObjectFromShape
    - functionName:    JS_IsException
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 639
      functionLinenumberEnd: 640
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    886
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_NewString
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 736
      functionLinenumberEnd: 737
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_NewStringLen
        - strlen
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './quickjs.h:737,38'
          Dst:             strlen
        - Src:             './quickjs.h:737,12'
          Dst:             JS_NewStringLen
    - functionName:    JS_DefinePropertyValue
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10280
      functionLinenumberEnd: 10285
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DefineProperty
        - JS_FreeValue
      functionUses:    77
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:10282,11'
          Dst:             JS_DefineProperty
        - Src:             'quickjs.c:10284,5'
          Dst:             JS_FreeValue
    - functionName:    build_backtrace
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7140
      functionLinenumberEnd: 7216
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         51
      ICount:          245
      EdgeCount:       69
      CyclomaticComplexity: 20
      functionsReached:
        - JS_AtomToCString
        - JS_DefinePropertyValue
        - JS_FreeCString
        - JS_IsException
        - JS_IsObject
        - JS_NewString
        - dbuf_error
        - dbuf_free
        - dbuf_printf
        - dbuf_putc
        - find_line_num
        - get_prop_string
        - js_class_has_bytecode
        - js_dbuf_init
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7148,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:7151,5'
          Dst:             js_dbuf_init
        - Src:             'quickjs.c:7153,9'
          Dst:             dbuf_printf
        - Src:             'quickjs.c:7155,13'
          Dst:             dbuf_printf
        - Src:             'quickjs.c:7156,9'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:7157,15'
          Dst:             JS_NewString
        - Src:             'quickjs.c:7158,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:7161,13'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:7163,13'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:7165,13'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:7177,25'
          Dst:             get_prop_string
        - Src:             'quickjs.c:7182,9'
          Dst:             dbuf_printf
        - Src:             'quickjs.c:7183,9'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:7186,13'
          Dst:             js_class_has_bytecode
        - Src:             'quickjs.c:7193,29'
          Dst:             find_line_num
        - Src:             'quickjs.c:7195,28'
          Dst:             JS_AtomToCString
        - Src:             'quickjs.c:7196,17'
          Dst:             dbuf_printf
        - Src:             'quickjs.c:7198,17'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:7200,21'
          Dst:             dbuf_printf
        - Src:             'quickjs.c:7201,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:7204,13'
          Dst:             dbuf_printf
        - Src:             'quickjs.c:7206,9'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:7208,5'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:7209,9'
          Dst:             dbuf_error
        - Src:             'quickjs.c:7212,15'
          Dst:             JS_NewString
        - Src:             'quickjs.c:7213,5'
          Dst:             dbuf_free
        - Src:             'quickjs.c:7214,5'
          Dst:             JS_DefinePropertyValue
    - functionName:    JS_Throw
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6955
      functionLinenumberEnd: 6961
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_FreeValue
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:6957,5'
          Dst:             JS_FreeValue
    - functionName:    JS_IsObject
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 660
      functionLinenumberEnd: 661
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    76
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_dbuf_init
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1520
      functionLinenumberEnd: 1522
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_init2
        - js_realloc_rt
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1521,5'
          Dst:             dbuf_init2
        - Src:             'quickjs.c:1521,5'
          Dst:             js_realloc_rt
    - functionName:    dbuf_putc
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 284
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __dbuf_putc
      functionUses:    185
      BranchProfiles:  []
      Callsites:
        - Src:             './cutils.h:279,16'
          Dst:             __dbuf_putc
    - functionName:    get_prop_string
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7104
      functionLinenumberEnd: 7131
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          145
      EdgeCount:       38
      CyclomaticComplexity: 12
      functionsReached:
        - JS_ToCString
        - get_shape_prop
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7113,11'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:7120,15'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:7130,12'
          Dst:             JS_ToCString
    - functionName:    JS_FreeCString
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4142
      functionLinenumberEnd: 4149
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          24
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeValue
      functionUses:    102
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4148,5'
          Dst:             JS_FreeValue
    - functionName:    js_class_has_bytecode
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5463
      functionLinenumberEnd: 5467
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          33
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    find_line_num
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7036
      functionLinenumberEnd: 7099
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          162
      EdgeCount:       42
      CyclomaticComplexity: 14
      functionsReached:
        - get_leb128
        - get_sleb128
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7049,11'
          Dst:             get_leb128
        - Src:             'quickjs.c:7055,11'
          Dst:             get_leb128
        - Src:             'quickjs.c:7066,23'
          Dst:             get_leb128
        - Src:             'quickjs.c:7071,23'
          Dst:             get_sleb128
        - Src:             'quickjs.c:7081,19'
          Dst:             get_sleb128
    - functionName:    JS_AtomToCString
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 460
      functionLinenumberEnd: 461
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_AtomToCStringLen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './quickjs.h:461,12'
          Dst:             JS_AtomToCStringLen
    - functionName:    dbuf_error
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 322
      functionLinenumberEnd: 323
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_AtomToCStringLen
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3341
      functionLinenumberEnd: 3354
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          36
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_AtomToString
        - JS_FreeValue
        - JS_IsException
        - JS_ToCStringLen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3345,11'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:3346,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:3351,12'
          Dst:             JS_ToCStringLen
        - Src:             'quickjs.c:3352,5'
          Dst:             JS_FreeValue
    - functionName:    JS_AtomToString
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3215
      functionLinenumberEnd: 3216
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __JS_AtomToValue
      functionUses:    39
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3216,12'
          Dst:             __JS_AtomToValue
    - functionName:    JS_ToCStringLen
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 744
      functionLinenumberEnd: 745
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_ToCStringLen2
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             './quickjs.h:745,12'
          Dst:             JS_ToCStringLen2
    - functionName:    JS_ToCStringLen2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4046
      functionLinenumberEnd: 4139
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         75
      ICount:          387
      EdgeCount:       102
      CyclomaticComplexity: 29
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_ToString
        - from_surrogate
        - is_hi_surrogate
        - is_lo_surrogate
        - js_alloc_string
        - unicode_to_utf8
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4053,15'
          Dst:             JS_ToString
        - Src:             'quickjs.c:4054,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:4057,15'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:4081,19'
          Dst:             js_alloc_string
        - Src:             'quickjs.c:4099,19'
          Dst:             js_alloc_string
        - Src:             'quickjs.c:4109,21'
          Dst:             is_hi_surrogate
        - Src:             'quickjs.c:4112,29'
          Dst:             is_lo_surrogate
        - Src:             'quickjs.c:4114,33'
          Dst:             from_surrogate
        - Src:             'quickjs.c:4124,22'
          Dst:             unicode_to_utf8
        - Src:             'quickjs.c:4131,5'
          Dst:             JS_FreeValue
    - functionName:    JS_ToString
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13247
      functionLinenumberEnd: 13248
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_ToStringInternal
      functionUses:    44
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:13248,12'
          Dst:             JS_ToStringInternal
    - functionName:    js_alloc_string
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1961
      functionLinenumberEnd: 1969
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          25
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_ThrowOutOfMemory
        - js_alloc_string_rt
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1963,9'
          Dst:             js_alloc_string_rt
        - Src:             'quickjs.c:1965,9'
          Dst:             JS_ThrowOutOfMemory
    - functionName:    is_hi_surrogate
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 341
      functionLinenumberEnd: 342
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_lo_surrogate
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 346
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    from_surrogate
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_alloc_string_rt
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1943
      functionLinenumberEnd: 1958
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - js_malloc_rt
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1945,11'
          Dst:             js_malloc_rt
    - functionName:    JS_ThrowOutOfMemory
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7378
      functionLinenumberEnd: 7386
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_ThrowInternalError
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7382,9'
          Dst:             JS_ThrowInternalError
    - functionName:    JS_ThrowInternalError
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7367
      functionLinenumberEnd: 7375
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_ThrowError
      functionUses:    30
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7372,11'
          Dst:             JS_ThrowError
    - functionName:    js_malloc_rt
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1385
      functionLinenumberEnd: 1386
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_ToStringInternal
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13190
      functionLinenumberEnd: 13244
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          164
      EdgeCount:       25
      CyclomaticComplexity: 3
      functionsReached:
        - JS_AtomToString
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_ThrowTypeError
        - JS_ToPrimitive
        - JS_ToStringInternal
        - i32toa
        - js_bigint_to_string
        - js_dtoa2
        - js_linearize_string_rope
        - js_new_string8
        - js_new_string8_len
      functionUses:    3
      BranchProfiles:
        - Branch String:   'quickjs.c:13195,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:13197,16'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:13199,46'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:13199,16'
          Dst:             js_linearize_string_rope
        - Src:             'quickjs.c:13203,19'
          Dst:             i32toa
        - Src:             'quickjs.c:13204,20'
          Dst:             js_new_string8_len
        - Src:             'quickjs.c:13208,16'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:13211,16'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:13213,16'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:13219,20'
          Dst:             JS_ToPrimitive
        - Src:             'quickjs.c:13220,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:13222,19'
          Dst:             JS_ToStringInternal
        - Src:             'quickjs.c:13223,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:13228,16'
          Dst:             js_new_string8
        - Src:             'quickjs.c:13231,20'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:13233,20'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:13236,16'
          Dst:             js_dtoa2
        - Src:             'quickjs.c:13240,16'
          Dst:             js_bigint_to_string
        - Src:             'quickjs.c:13242,16'
          Dst:             js_new_string8
    - functionName:    js_linearize_string_rope
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4419
      functionLinenumberEnd: 4450
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          116
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - JS_AtomToString
        - JS_DupValue
        - JS_FreeValue
        - string_buffer_concat_value
        - string_buffer_end
        - string_buffer_init2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4429,15'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:4430,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:4433,9'
          Dst:             string_buffer_init2
        - Src:             'quickjs.c:4435,9'
          Dst:             string_buffer_concat_value
        - Src:             'quickjs.c:4437,11'
          Dst:             string_buffer_end
        - Src:             'quickjs.c:4440,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:4441,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:4442,19'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:4443,20'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:4445,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:4448,5'
          Dst:             JS_FreeValue
    - functionName:    js_new_string8_len
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3511
      functionLinenumberEnd: 3523
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          39
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_AtomToString
        - js_alloc_string
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3515,16'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:3517,11'
          Dst:             js_alloc_string
    - functionName:    JS_ToPrimitive
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10737
      functionLinenumberEnd: 10738
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
        - JS_ToPrimitiveFree
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:10738,36'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:10738,12'
          Dst:             JS_ToPrimitiveFree
    - functionName:    js_new_string8
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3526
      functionLinenumberEnd: 3527
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_new_string8_len
        - strlen
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3527,41'
          Dst:             strlen
        - Src:             'quickjs.c:3527,12'
          Dst:             js_new_string8_len
    - functionName:    js_dtoa2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13166
      functionLinenumberEnd: 13187
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - double
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          50
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - js_dtoa
        - js_dtoa_max_len
        - js_free
        - js_malloc
        - js_new_string8_len
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:13171,15'
          Dst:             js_dtoa_max_len
        - Src:             'quickjs.c:13175,19'
          Dst:             js_malloc
        - Src:             'quickjs.c:13183,11'
          Dst:             js_dtoa
        - Src:             'quickjs.c:13184,11'
          Dst:             js_new_string8_len
        - Src:             'quickjs.c:13185,5'
          Dst:             js_free
    - functionName:    js_bigint_to_string
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13160
      functionLinenumberEnd: 13161
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_bigint_to_string1
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:13161,12'
          Dst:             js_bigint_to_string1
    - functionName:    js_bigint_to_string1
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12236
      functionLinenumberEnd: 12329
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         56
      ICount:          311
      EdgeCount:       76
      CyclomaticComplexity: 22
      functionsReached:
        - __assert_fail
        - clz32
        - i64toa_radix
        - js_bigint_neg
        - js_bigint_new
        - js_bigint_sign
        - js_free
        - js_limb_safe_clz
        - js_malloc
        - js_new_string8_len
        - js_u64toa
        - limb_to_a
        - mp_div1
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:12240,15'
          Dst:             i64toa_radix
        - Src:             'quickjs.c:12241,16'
          Dst:             js_new_string8_len
        - Src:             'quickjs.c:12249,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:12253,20'
          Dst:             js_new_string8_len
        - Src:             'quickjs.c:12256,18'
          Dst:             js_bigint_sign
        - Src:             'quickjs.c:12258,19'
          Dst:             js_bigint_neg
        - Src:             'quickjs.c:12264,19'
          Dst:             js_bigint_new
        - Src:             'quickjs.c:12270,27'
          Dst:             clz32
        - Src:             'quickjs.c:12271,42'
          Dst:             js_limb_safe_clz
        - Src:             'quickjs.c:12276,15'
          Dst:             js_malloc
        - Src:             'quickjs.c:12278,13'
          Dst:             js_free
        - Src:             'quickjs.c:12296,29'
          Dst:             js_u64toa
        - Src:             'quickjs.c:12300,25'
          Dst:             mp_div1
        - Src:             'quickjs.c:12301,25'
          Dst:             limb_to_a
        - Src:             'quickjs.c:12324,9'
          Dst:             js_free
        - Src:             'quickjs.c:12325,15'
          Dst:             js_new_string8_len
        - Src:             'quickjs.c:12326,9'
          Dst:             js_free
    - functionName:    js_bigint_neg
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11454
      functionLinenumberEnd: 11459
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_bigint_add
        - js_bigint_set_si
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:11457,9'
          Dst:             js_bigint_set_si
        - Src:             'quickjs.c:11458,12'
          Dst:             js_bigint_add
    - functionName:    js_bigint_new
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11191
      functionLinenumberEnd: 11203
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          37
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_ThrowRangeError
        - js_malloc
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:11194,9'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:11197,9'
          Dst:             js_malloc
    - functionName:    clz32
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_limb_safe_clz
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10905
      functionLinenumberEnd: 10910
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          24
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - js_limb_clz
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:10909,16'
          Dst:             js_limb_clz
    - functionName:    js_malloc
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1415
      functionLinenumberEnd: 1423
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          25
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_ThrowOutOfMemory
        - js_malloc_rt
      functionUses:    59
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1417,11'
          Dst:             js_malloc_rt
        - Src:             'quickjs.c:1419,9'
          Dst:             JS_ThrowOutOfMemory
    - functionName:    js_u64toa
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12159
      functionLinenumberEnd: 12175
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          47
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mp_div1
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10972
      functionLinenumberEnd: 10980
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          41
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    limb_to_a
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12180
      functionLinenumberEnd: 12198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          133
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_limb_clz
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10898
      functionLinenumberEnd: 10899
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - clz64
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:10899,12'
          Dst:             clz64
    - functionName:    clz64
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_ThrowRangeError
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7356
      functionLinenumberEnd: 7364
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_ThrowError
      functionUses:    45
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7361,11'
          Dst:             JS_ThrowError
    - functionName:    js_bigint_add
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11414
      functionLinenumberEnd: 11450
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          329
      EdgeCount:       57
      CyclomaticComplexity: 17
      functionsReached:
        - js_bigint_extend
        - js_bigint_new
        - js_bigint_sign
        - max_int
        - min_int
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:11419,10'
          Dst:             max_int
        - Src:             'quickjs.c:11420,10'
          Dst:             min_int
        - Src:             'quickjs.c:11421,9'
          Dst:             js_bigint_new
        - Src:             'quickjs.c:11432,15'
          Dst:             js_bigint_sign
        - Src:             'quickjs.c:11433,16'
          Dst:             js_bigint_sign
        - Src:             'quickjs.c:11449,12'
          Dst:             js_bigint_extend
    - functionName:    max_int
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          16
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    31
      BranchProfiles:  []
      Callsites:       []
    - functionName:    min_int
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          16
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    28
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_bigint_extend
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11388
      functionLinenumberEnd: 11407
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          73
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - js_bigint_normalize
        - js_free
        - js_realloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:11393,14'
          Dst:             js_realloc
        - Src:             'quickjs.c:11396,13'
          Dst:             js_free
        - Src:             'quickjs.c:11404,13'
          Dst:             js_bigint_normalize
    - functionName:    js_realloc
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1444
      functionLinenumberEnd: 1452
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          32
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_ThrowOutOfMemory
        - js_realloc_rt
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1446,11'
          Dst:             js_realloc_rt
        - Src:             'quickjs.c:1448,9'
          Dst:             JS_ThrowOutOfMemory
    - functionName:    js_bigint_normalize
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11356
      functionLinenumberEnd: 11357
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_bigint_normalize1
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:11357,12'
          Dst:             js_bigint_normalize1
    - functionName:    js_bigint_normalize1
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11332
      functionLinenumberEnd: 11352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          85
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - __assert_fail
        - js_realloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:11335,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:11348,14'
          Dst:             js_realloc
    - functionName:    js_realloc_rt
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1395
      functionLinenumberEnd: 1396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strlen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    35
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_ToPrimitiveFree
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10663
      functionLinenumberEnd: 10734
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         46
      ICount:          231
      EdgeCount:       63
      CyclomaticComplexity: 19
      functionsReached:
        - JS_AtomToString
        - JS_CallFree
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsFunction
        - JS_IsNull
        - JS_IsUndefined
        - JS_ThrowTypeError
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:10674,18'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:10675,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:10679,14'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:10679,41'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:10694,19'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:10695,19'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:10696,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:10697,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:10699,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:10702,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:10703,20'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:10714,18'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:10715,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:10717,13'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:10718,19'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:10719,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:10722,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:10725,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:10727,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:10714,18'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:10715,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:10717,13'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:10718,19'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:10719,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:10725,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:10727,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:10730,5'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:10732,5'
          Dst:             JS_FreeValue
    - functionName:    JS_GetPropertyInternal
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7812
      functionLinenumberEnd: 7963
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         89
      ICount:          489
      EdgeCount:       123
      CyclomaticComplexity: 36
      functionsReached:
        - JS_AtomIsNumericIndex
        - JS_AutoInitProperty
        - JS_CallFree
        - JS_DupValue
        - JS_FreeValue
        - JS_GetPropertyUint32
        - JS_GetPrototypePrimitive
        - JS_IsUninitialized
        - JS_ThrowReferenceErrorNotDefined
        - JS_ThrowReferenceErrorUninitialized
        - __JS_AtomIsTaggedInt
        - __JS_AtomToUInt32
        - __JS_ThrowTypeErrorAtom
        - get_shape_prop
        - js_new_string_char
        - string_get
        - string_rope_get
      functionUses:    160
      BranchProfiles:
        - Branch String:   'quickjs.c:7819,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:7822,20'
          Dst:             __JS_ThrowTypeErrorAtom
        - Src:             'quickjs.c:7824,20'
          Dst:             __JS_ThrowTypeErrorAtom
        - Src:             'quickjs.c:7830,21'
          Dst:             __JS_AtomIsTaggedInt
        - Src:             'quickjs.c:7832,27'
          Dst:             __JS_AtomToUInt32
        - Src:             'quickjs.c:7834,56'
          Dst:             string_get
        - Src:             'quickjs.c:7834,32'
          Dst:             js_new_string_char
        - Src:             'quickjs.c:7844,21'
          Dst:             __JS_AtomIsTaggedInt
        - Src:             'quickjs.c:7846,27'
          Dst:             __JS_AtomToUInt32
        - Src:             'quickjs.c:7848,56'
          Dst:             string_rope_get
        - Src:             'quickjs.c:7848,32'
          Dst:             js_new_string_char
        - Src:             'quickjs.c:7859,13'
          Dst:             JS_GetPrototypePrimitive
        - Src:             'quickjs.c:7867,15'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:7877,32'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:7878,32'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:7882,25'
          Dst:             JS_IsUninitialized
        - Src:             'quickjs.c:7883,32'
          Dst:             JS_ThrowReferenceErrorUninitialized
        - Src:             'quickjs.c:7884,28'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:7887,25'
          Dst:             JS_AutoInitProperty
        - Src:             'quickjs.c:7892,24'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:7898,21'
          Dst:             __JS_AtomIsTaggedInt
        - Src:             'quickjs.c:7899,36'
          Dst:             __JS_AtomToUInt32
        - Src:             'quickjs.c:7902,32'
          Dst:             JS_GetPropertyUint32
        - Src:             'quickjs.c:7910,27'
          Dst:             JS_AtomIsNumericIndex
        - Src:             'quickjs.c:7925,32'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:7927,25'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:7937,32'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:7939,25'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:7944,33'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:7945,40'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:7959,16'
          Dst:             JS_ThrowReferenceErrorNotDefined
    - functionName:    JS_IsNull
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 629
      functionLinenumberEnd: 630
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    61
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_CallFree
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20150
      functionLinenumberEnd: 20154
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_CallInternal
        - JS_FreeValue
      functionUses:    31
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20151,19'
          Dst:             JS_CallInternal
        - Src:             'quickjs.c:20153,5'
          Dst:             JS_FreeValue
    - functionName:    JS_IsFunction
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10559
      functionLinenumberEnd: 10572
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          45
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    41
      BranchProfiles:
        - Branch String:   'quickjs.c:10564,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    JS_CallInternal
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17371
      functionLinenumberEnd: 20139
      functionDepth:   0
      returnType:      'N/A'
      argCount:        9
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1142
      ICount:          7810
      EdgeCount:       1503
      CyclomaticComplexity: 363
      functionsReached:
        - JS_AddBrand
        - JS_AtomToString
        - JS_AtomToValue
        - JS_Call
        - JS_CallConstructor2
        - JS_CallConstructorInternal
        - JS_CallFree
        - JS_CallInternal
        - JS_CheckBrand
        - JS_ConcatString
        - JS_ConcatStringInPlace
        - JS_CopyDataProperties
        - JS_DefineObjectName
        - JS_DefineObjectNameComputed
        - JS_DefinePrivateField
        - JS_DefineProperty
        - JS_DefinePropertyValue
        - JS_DefinePropertyValueValue
        - JS_DeleteGlobalVar
        - JS_DeleteProperty
        - JS_DupValue
        - JS_EvalObject
        - JS_FreeAtom
        - JS_FreeValue
        - JS_GetGlobalVarRef
        - JS_GetPrivateField
        - JS_GetPropertyInternal
        - JS_GetPropertyValue
        - JS_GetPrototype
        - JS_HasProperty
        - JS_IsException
        - JS_IsNull
        - JS_IsObject
        - JS_IsString
        - JS_IsUndefined
        - JS_IsUninitialized
        - JS_IteratorClose
        - JS_NewObject
        - JS_NewObjectProto
        - JS_NewRegexp
        - JS_NewSymbolFromAtom
        - JS_SetPrivateField
        - JS_SetPropertyInternal
        - JS_SetPropertyValue
        - JS_SetPrototypeInternal
        - JS_Throw
        - JS_ThrowInternalError
        - JS_ThrowReferenceError
        - JS_ThrowReferenceErrorNotDefined
        - JS_ThrowReferenceErrorUninitialized
        - JS_ThrowReferenceErrorUninitialized2
        - JS_ThrowStackOverflow
        - JS_ThrowSyntaxErrorVarRedeclaration
        - JS_ThrowTypeError
        - JS_ThrowTypeErrorNotAnObject
        - JS_ThrowTypeErrorReadOnly
        - JS_ToBoolFree
        - JS_ToObject
        - JS_ToPropertyKey
        - JS_ValueToAtom
        - __JS_NewFloat64
        - __JS_NewShortBigInt
        - abort
        - add_property
        - build_arg_list
        - build_backtrace
        - close_lexical_var
        - close_var_refs
        - free_arg_list
        - free_var_ref
        - get_i16
        - get_i8
        - get_shape_prop
        - get_u16
        - get_u32
        - get_var_ref
        - is_backtrace_needed
        - is_strict_mode
        - js_add_slow
        - js_append_enumerate
        - js_binary_arith_slow
        - js_binary_logic_slow
        - js_build_arguments
        - js_build_mapped_arguments
        - js_check_stack_overflow
        - js_closure
        - js_create_array
        - js_create_array_free
        - js_dynamic_import
        - js_eq_slow
        - js_for_await_of_next
        - js_for_in_next
        - js_for_in_start
        - js_for_of_next
        - js_for_of_start
        - js_function_apply
        - js_has_unscopable
        - js_import_meta
        - js_iterator_get_value_done
        - js_method_set_home_object
        - js_method_set_properties
        - js_not_slow
        - js_op_define_class
        - js_operator_delete
        - js_operator_in
        - js_operator_instanceof
        - js_operator_private_in
        - js_operator_typeof
        - js_poll_interrupts
        - js_post_inc_slow
        - js_relational_slow
        - js_same_value
        - js_shr_slow
        - js_strict_eq_slow
        - js_unary_arith_slow
        - min_int
        - set_value
      functionUses:    8
      BranchProfiles:
        - Branch String:   'quickjs.c:17587,17'
          Branch Sides:    []
        - Branch String:   'quickjs.c:19077,21'
          Branch Sides:    []
        - Branch String:   'quickjs.c:19891,13'
          Branch Sides:    []
        - Branch String:   'quickjs.c:19946,21'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:17405,9'
          Dst:             js_poll_interrupts
        - Src:             'quickjs.c:17439,20'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:17455,9'
          Dst:             js_check_stack_overflow
        - Src:             'quickjs.c:17456,16'
          Dst:             JS_ThrowStackOverflow
        - Src:             'quickjs.c:17466,17'
          Dst:             min_int
        - Src:             'quickjs.c:17469,26'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:17498,38'
          Dst:             get_u32
        - Src:             'quickjs.c:17502,51'
          Dst:             get_u32
        - Src:             'quickjs.c:17502,21'
          Dst:             __JS_NewShortBigInt
        - Src:             'quickjs.c:17506,47'
          Dst:             get_u32
        - Src:             'quickjs.c:17506,21'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:17522,38'
          Dst:             get_i8
        - Src:             'quickjs.c:17526,38'
          Dst:             get_i16
        - Src:             'quickjs.c:17530,21'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:17533,37'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:17533,21'
          Dst:             js_closure
        - Src:             'quickjs.c:17534,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:17538,21'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:17542,41'
          Dst:             get_u32
        - Src:             'quickjs.c:17542,21'
          Dst:             JS_AtomToValue
        - Src:             'quickjs.c:17560,31'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:17562,31'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:17563,29'
          Dst:             JS_IsException
        - Src:             'quickjs.c:17568,27'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:17580,21'
          Dst:             JS_NewObject
        - Src:             'quickjs.c:17581,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:17589,29'
          Dst:             js_build_arguments
        - Src:             'quickjs.c:17590,25'
          Dst:             JS_IsException
        - Src:             'quickjs.c:17595,59'
          Dst:             min_int
        - Src:             'quickjs.c:17594,29'
          Dst:             js_build_mapped_arguments
        - Src:             'quickjs.c:17596,25'
          Dst:             JS_IsException
        - Src:             'quickjs.c:17600,29'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:17603,29'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:17612,37'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:17616,29'
          Dst:             JS_NewObjectProto
        - Src:             'quickjs.c:17617,25'
          Dst:             JS_IsException
        - Src:             'quickjs.c:17621,29'
          Dst:             js_import_meta
        - Src:             'quickjs.c:17622,25'
          Dst:             JS_IsException
        - Src:             'quickjs.c:17626,21'
          Dst:             abort
        - Src:             'quickjs.c:17632,29'
          Dst:             get_u16
        - Src:             'quickjs.c:17634,25'
          Dst:             min_int
        - Src:             'quickjs.c:17635,25'
          Dst:             js_create_array
        - Src:             'quickjs.c:17636,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:17642,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:17646,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:17651,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:17657,21'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:17661,21'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:17662,21'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:17666,21'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:17667,21'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:17668,21'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:17673,22'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:17679,22'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:17686,22'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:17694,22'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:17785,59'
          Dst:             get_u32
        - Src:             'quickjs.c:17785,33'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:17787,25'
          Dst:             js_closure
        - Src:             'quickjs.c:17788,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:17803,29'
          Dst:             get_u16
        - Src:             'quickjs.c:17809,27'
          Dst:             JS_CallInternal
        - Src:             'quickjs.c:17811,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:17816,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:17823,29'
          Dst:             get_u16
        - Src:             'quickjs.c:17827,27'
          Dst:             JS_CallConstructorInternal
        - Src:             'quickjs.c:17830,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:17833,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:17841,29'
          Dst:             get_u16
        - Src:             'quickjs.c:17845,27'
          Dst:             JS_CallInternal
        - Src:             'quickjs.c:17847,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:17852,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:17858,25'
          Dst:             get_u16
        - Src:             'quickjs.c:17860,23'
          Dst:             js_create_array_free
        - Src:             'quickjs.c:17862,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:17870,25'
          Dst:             get_u16
        - Src:             'quickjs.c:17874,27'
          Dst:             js_function_apply
        - Src:             'quickjs.c:17875,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:17877,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:17878,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:17879,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:17893,18'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:17894,22'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:17895,21'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:17905,17'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:17907,17'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:17915,21'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:17917,25'
          Dst:             JS_GetPrototype
        - Src:             'quickjs.c:17918,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:17920,23'
          Dst:             JS_CallConstructor2
        - Src:             'quickjs.c:17921,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:17922,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:17929,27'
          Dst:             JS_CheckBrand
        - Src:             'quickjs.c:17933,21'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:17939,17'
          Dst:             JS_AddBrand
        - Src:             'quickjs.c:17941,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:17942,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:17947,13'
          Dst:             JS_Throw
        - Src:             'quickjs.c:17959,24'
          Dst:             get_u32
        - Src:             'quickjs.c:17963,21'
          Dst:             JS_ThrowTypeErrorReadOnly
        - Src:             'quickjs.c:17966,21'
          Dst:             JS_ThrowSyntaxErrorVarRedeclaration
        - Src:             'quickjs.c:17969,21'
          Dst:             JS_ThrowReferenceErrorUninitialized
        - Src:             'quickjs.c:17972,21'
          Dst:             JS_ThrowReferenceError
        - Src:             'quickjs.c:17975,21'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:17977,21'
          Dst:             JS_ThrowInternalError
        - Src:             'quickjs.c:17985,29'
          Dst:             get_u16
        - Src:             'quickjs.c:17986,29'
          Dst:             get_u16
        - Src:             'quickjs.c:17990,21'
          Dst:             js_same_value
        - Src:             'quickjs.c:17995,31'
          Dst:             JS_EvalObject
        - Src:             'quickjs.c:17998,31'
          Dst:             JS_CallInternal
        - Src:             'quickjs.c:18001,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:18004,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:18017,29'
          Dst:             get_u16
        - Src:             'quickjs.c:18020,23'
          Dst:             build_arg_list
        - Src:             'quickjs.c:18023,21'
          Dst:             js_same_value
        - Src:             'quickjs.c:18028,31'
          Dst:             JS_EvalObject
        - Src:             'quickjs.c:18031,31'
          Dst:             JS_Call
        - Src:             'quickjs.c:18034,17'
          Dst:             free_arg_list
        - Src:             'quickjs.c:18035,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:18037,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:18038,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:18046,26'
          Dst:             JS_NewRegexp
        - Src:             'quickjs.c:18048,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:18057,25'
          Dst:             JS_GetPrototype
        - Src:             'quickjs.c:18058,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:18060,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:18069,23'
          Dst:             js_dynamic_import
        - Src:             'quickjs.c:18070,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:18072,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:18073,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:18084,23'
          Dst:             get_u16
        - Src:             'quickjs.c:18087,21'
          Dst:             JS_IsUninitialized
        - Src:             'quickjs.c:18090,25'
          Dst:             JS_ThrowReferenceErrorUninitialized
        - Src:             'quickjs.c:18094,33'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:18098,29'
          Dst:             JS_IsException
        - Src:             'quickjs.c:18102,29'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18113,23'
          Dst:             get_u16
        - Src:             'quickjs.c:18116,21'
          Dst:             JS_IsUninitialized
        - Src:             'quickjs.c:18123,29'
          Dst:             JS_ThrowReferenceErrorUninitialized
        - Src:             'quickjs.c:18125,29'
          Dst:             JS_ThrowTypeErrorReadOnly
        - Src:             'quickjs.c:18129,31'
          Dst:             JS_HasProperty
        - Src:             'quickjs.c:18132,41'
          Dst:             is_strict_mode
        - Src:             'quickjs.c:18133,29'
          Dst:             JS_ThrowReferenceErrorNotDefined
        - Src:             'quickjs.c:18136,31'
          Dst:             JS_SetPropertyInternal
        - Src:             'quickjs.c:18144,20'
          Dst:             set_value
        - Src:             'quickjs.c:18152,23'
          Dst:             get_u16
        - Src:             'quickjs.c:18154,25'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18161,23'
          Dst:             get_u16
        - Src:             'quickjs.c:18163,17'
          Dst:             set_value
        - Src:             'quickjs.c:18170,23'
          Dst:             get_u16
        - Src:             'quickjs.c:18172,47'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18172,17'
          Dst:             set_value
        - Src:             'quickjs.c:18178,23'
          Dst:             get_u16
        - Src:             'quickjs.c:18180,25'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18187,23'
          Dst:             get_u16
        - Src:             'quickjs.c:18189,17'
          Dst:             set_value
        - Src:             'quickjs.c:18196,23'
          Dst:             get_u16
        - Src:             'quickjs.c:18198,47'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18198,17'
          Dst:             set_value
        - Src:             'quickjs.c:18203,36'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18204,28'
          Dst:             set_value
        - Src:             'quickjs.c:18205,60'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18205,28'
          Dst:             set_value
        - Src:             'quickjs.c:18207,36'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18208,36'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18209,36'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18210,36'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18211,28'
          Dst:             set_value
        - Src:             'quickjs.c:18212,28'
          Dst:             set_value
        - Src:             'quickjs.c:18213,28'
          Dst:             set_value
        - Src:             'quickjs.c:18214,28'
          Dst:             set_value
        - Src:             'quickjs.c:18215,56'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18215,28'
          Dst:             set_value
        - Src:             'quickjs.c:18216,56'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18216,28'
          Dst:             set_value
        - Src:             'quickjs.c:18217,56'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18217,28'
          Dst:             set_value
        - Src:             'quickjs.c:18218,56'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18218,28'
          Dst:             set_value
        - Src:             'quickjs.c:18219,36'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18220,36'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18221,36'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18222,36'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18223,28'
          Dst:             set_value
        - Src:             'quickjs.c:18224,28'
          Dst:             set_value
        - Src:             'quickjs.c:18225,28'
          Dst:             set_value
        - Src:             'quickjs.c:18226,28'
          Dst:             set_value
        - Src:             'quickjs.c:18227,56'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18227,28'
          Dst:             set_value
        - Src:             'quickjs.c:18228,56'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18228,28'
          Dst:             set_value
        - Src:             'quickjs.c:18229,56'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18229,28'
          Dst:             set_value
        - Src:             'quickjs.c:18230,56'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18230,28'
          Dst:             set_value
        - Src:             'quickjs.c:18231,40'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18232,40'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18233,40'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18234,40'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18235,32'
          Dst:             set_value
        - Src:             'quickjs.c:18236,32'
          Dst:             set_value
        - Src:             'quickjs.c:18237,32'
          Dst:             set_value
        - Src:             'quickjs.c:18238,32'
          Dst:             set_value
        - Src:             'quickjs.c:18239,68'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18239,32'
          Dst:             set_value
        - Src:             'quickjs.c:18240,68'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18240,32'
          Dst:             set_value
        - Src:             'quickjs.c:18241,68'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18241,32'
          Dst:             set_value
        - Src:             'quickjs.c:18242,68'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18242,32'
          Dst:             set_value
        - Src:             'quickjs.c:18249,23'
          Dst:             get_u16
        - Src:             'quickjs.c:18252,25'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18259,23'
          Dst:             get_u16
        - Src:             'quickjs.c:18261,17'
          Dst:             set_value
        - Src:             'quickjs.c:18268,23'
          Dst:             get_u16
        - Src:             'quickjs.c:18270,55'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18270,17'
          Dst:             set_value
        - Src:             'quickjs.c:18277,23'
          Dst:             get_u16
        - Src:             'quickjs.c:18280,21'
          Dst:             JS_IsUninitialized
        - Src:             'quickjs.c:18281,21'
          Dst:             JS_ThrowReferenceErrorUninitialized2
        - Src:             'quickjs.c:18284,25'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18291,23'
          Dst:             get_u16
        - Src:             'quickjs.c:18293,21'
          Dst:             JS_IsUninitialized
        - Src:             'quickjs.c:18294,21'
          Dst:             JS_ThrowReferenceErrorUninitialized2
        - Src:             'quickjs.c:18297,17'
          Dst:             set_value
        - Src:             'quickjs.c:18304,23'
          Dst:             get_u16
        - Src:             'quickjs.c:18306,21'
          Dst:             JS_IsUninitialized
        - Src:             'quickjs.c:18307,21'
          Dst:             JS_ThrowReferenceErrorUninitialized2
        - Src:             'quickjs.c:18310,17'
          Dst:             set_value
        - Src:             'quickjs.c:18317,23'
          Dst:             get_u16
        - Src:             'quickjs.c:18319,17'
          Dst:             set_value
        - Src:             'quickjs.c:18325,23'
          Dst:             get_u16
        - Src:             'quickjs.c:18327,21'
          Dst:             JS_IsUninitialized
        - Src:             'quickjs.c:18328,21'
          Dst:             JS_ThrowReferenceErrorUninitialized2
        - Src:             'quickjs.c:18331,25'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18338,23'
          Dst:             get_u16
        - Src:             'quickjs.c:18340,21'
          Dst:             JS_IsUninitialized
        - Src:             'quickjs.c:18341,21'
          Dst:             JS_ThrowReferenceErrorUninitialized2
        - Src:             'quickjs.c:18344,25'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18351,23'
          Dst:             get_u16
        - Src:             'quickjs.c:18353,21'
          Dst:             JS_IsUninitialized
        - Src:             'quickjs.c:18354,21'
          Dst:             JS_ThrowReferenceErrorUninitialized2
        - Src:             'quickjs.c:18357,17'
          Dst:             set_value
        - Src:             'quickjs.c:18364,23'
          Dst:             get_u16
        - Src:             'quickjs.c:18366,21'
          Dst:             JS_IsUninitialized
        - Src:             'quickjs.c:18367,21'
          Dst:             JS_ThrowReferenceErrorUninitialized2
        - Src:             'quickjs.c:18370,47'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18370,17'
          Dst:             set_value
        - Src:             'quickjs.c:18376,23'
          Dst:             get_u16
        - Src:             'quickjs.c:18378,21'
          Dst:             JS_IsUninitialized
        - Src:             'quickjs.c:18379,21'
          Dst:             JS_ThrowReferenceError
        - Src:             'quickjs.c:18382,17'
          Dst:             set_value
        - Src:             'quickjs.c:18389,23'
          Dst:             get_u16
        - Src:             'quickjs.c:18391,17'
          Dst:             close_lexical_var
        - Src:             'quickjs.c:18403,24'
          Dst:             get_u32
        - Src:             'quickjs.c:18404,23'
          Dst:             get_u16
        - Src:             'quickjs.c:18406,25'
          Dst:             JS_NewObjectProto
        - Src:             'quickjs.c:18407,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:18413,31'
          Dst:             get_var_ref
        - Src:             'quickjs.c:18417,22'
          Dst:             add_property
        - Src:             'quickjs.c:18420,21'
          Dst:             free_var_ref
        - Src:             'quickjs.c:18424,25'
          Dst:             JS_AtomToValue
        - Src:             'quickjs.c:18430,24'
          Dst:             get_u32
        - Src:             'quickjs.c:18434,21'
          Dst:             JS_GetGlobalVarRef
        - Src:             'quickjs.c:18441,28'
          Dst:             get_u32
        - Src:             'quickjs.c:18442,17'
          Dst:             js_poll_interrupts
        - Src:             'quickjs.c:18447,28'
          Dst:             get_u16
        - Src:             'quickjs.c:18448,17'
          Dst:             js_poll_interrupts
        - Src:             'quickjs.c:18453,17'
          Dst:             js_poll_interrupts
        - Src:             'quickjs.c:18467,27'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:18471,36'
          Dst:             get_u32
        - Src:             'quickjs.c:18473,21'
          Dst:             js_poll_interrupts
        - Src:             'quickjs.c:18488,27'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:18492,36'
          Dst:             get_u32
        - Src:             'quickjs.c:18494,21'
          Dst:             js_poll_interrupts
        - Src:             'quickjs.c:18509,27'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:18515,21'
          Dst:             js_poll_interrupts
        - Src:             'quickjs.c:18529,27'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:18535,21'
          Dst:             js_poll_interrupts
        - Src:             'quickjs.c:18543,24'
          Dst:             get_u32
        - Src:             'quickjs.c:18552,24'
          Dst:             get_u32
        - Src:             'quickjs.c:18569,21'
          Dst:             JS_ThrowInternalError
        - Src:             'quickjs.c:18579,17'
          Dst:             js_for_in_start
        - Src:             'quickjs.c:18584,17'
          Dst:             js_for_in_next
        - Src:             'quickjs.c:18590,17'
          Dst:             js_for_of_start
        - Src:             'quickjs.c:18600,21'
          Dst:             js_for_of_next
        - Src:             'quickjs.c:18607,17'
          Dst:             js_for_await_of_next
        - Src:             'quickjs.c:18613,17'
          Dst:             js_for_of_start
        - Src:             'quickjs.c:18620,17'
          Dst:             js_iterator_get_value_done
        - Src:             'quickjs.c:18625,17'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:18626,17'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:18634,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:18636,18'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:18638,21'
          Dst:             JS_IteratorClose
        - Src:             'quickjs.c:18640,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:18651,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:18654,21'
          Dst:             JS_ThrowInternalError
        - Src:             'quickjs.c:18655,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:18667,23'
          Dst:             JS_Call
        - Src:             'quickjs.c:18669,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:18671,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:18684,26'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:18686,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:18688,21'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:18688,47'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:18693,31'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:18696,31'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:18699,25'
          Dst:             JS_IsException
        - Src:             'quickjs.c:18701,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:18719,27'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:18782,13'
          Dst:             get_u32
        - Src:             'quickjs.c:18782,13'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:18782,13'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18782,13'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:18782,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:18782,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:18786,13'
          Dst:             get_u32
        - Src:             'quickjs.c:18786,13'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:18786,13'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18786,13'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:18786,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:18791,13'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:18791,13'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:18791,13'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:18791,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:18791,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:18804,24'
          Dst:             get_u32
        - Src:             'quickjs.c:18810,27'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:18816,25'
          Dst:             set_value
        - Src:             'quickjs.c:18820,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:18825,27'
          Dst:             JS_SetPropertyInternal
        - Src:             'quickjs.c:18827,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:18841,24'
          Dst:             get_u32
        - Src:             'quickjs.c:18843,23'
          Dst:             JS_NewSymbolFromAtom
        - Src:             'quickjs.c:18844,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:18854,23'
          Dst:             JS_GetPrivateField
        - Src:             'quickjs.c:18855,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:18856,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:18859,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:18867,23'
          Dst:             JS_SetPrivateField
        - Src:             'quickjs.c:18868,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:18869,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:18879,23'
          Dst:             JS_DefinePrivateField
        - Src:             'quickjs.c:18880,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:18891,24'
          Dst:             get_u32
        - Src:             'quickjs.c:18894,23'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:18906,24'
          Dst:             get_u32
        - Src:             'quickjs.c:18909,23'
          Dst:             JS_DefineObjectName
        - Src:             'quickjs.c:18917,23'
          Dst:             JS_DefineObjectNameComputed
        - Src:             'quickjs.c:18927,21'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:18927,43'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:18928,25'
          Dst:             JS_SetPrototypeInternal
        - Src:             'quickjs.c:18931,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:18936,13'
          Dst:             js_method_set_home_object
        - Src:             'quickjs.c:18953,28'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:18958,28'
          Dst:             get_u32
        - Src:             'quickjs.c:18982,23'
          Dst:             js_method_set_properties
        - Src:             'quickjs.c:18984,27'
          Dst:             JS_DefineProperty
        - Src:             'quickjs.c:18987,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:18989,21'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:18990,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:19004,24'
          Dst:             get_u32
        - Src:             'quickjs.c:19007,21'
          Dst:             js_op_define_class
        - Src:             'quickjs.c:19053,13'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:19053,13'
          Dst:             JS_GetPropertyValue
        - Src:             'quickjs.c:19053,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:19053,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:19057,13'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:19057,13'
          Dst:             JS_GetPropertyValue
        - Src:             'quickjs.c:19057,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:19074,27'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:19085,29'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:19085,29'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:19086,29'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:19090,35'
          Dst:             JS_ToPropertyKey
        - Src:             'quickjs.c:19091,29'
          Dst:             JS_IsException
        - Src:             'quickjs.c:19093,25'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:19098,60'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:19098,27'
          Dst:             JS_GetPropertyValue
        - Src:             'quickjs.c:19099,25'
          Dst:             JS_IsException
        - Src:             'quickjs.c:19113,24'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:19116,21'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:19117,21'
          Dst:             JS_ThrowReferenceErrorNotDefined
        - Src:             'quickjs.c:19118,21'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:19121,23'
          Dst:             JS_HasProperty
        - Src:             'quickjs.c:19124,25'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:19127,25'
          Dst:             is_strict_mode
        - Src:             'quickjs.c:19128,25'
          Dst:             JS_ThrowReferenceErrorNotDefined
        - Src:             'quickjs.c:19129,25'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:19134,27'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:19136,17'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:19137,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:19149,24'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:19152,23'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:19153,17'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:19154,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:19156,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:19157,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:19158,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:19191,33'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:19198,25'
          Dst:             set_value
        - Src:             'quickjs.c:19200,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:19205,27'
          Dst:             JS_SetPropertyValue
        - Src:             'quickjs.c:19206,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:19219,24'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:19222,21'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:19223,25'
          Dst:             is_strict_mode
        - Src:             'quickjs.c:19224,25'
          Dst:             JS_ThrowReferenceErrorNotDefined
        - Src:             'quickjs.c:19225,25'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:19228,34'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:19231,23'
          Dst:             JS_HasProperty
        - Src:             'quickjs.c:19234,25'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:19237,25'
          Dst:             is_strict_mode
        - Src:             'quickjs.c:19238,25'
          Dst:             JS_ThrowReferenceErrorNotDefined
        - Src:             'quickjs.c:19239,25'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:19243,23'
          Dst:             JS_SetPropertyInternal
        - Src:             'quickjs.c:19244,17'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:19245,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:19246,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:19259,21'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:19262,24'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:19265,23'
          Dst:             JS_SetPropertyInternal
        - Src:             'quickjs.c:19267,17'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:19268,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:19269,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:19270,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:19280,64'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:19280,23'
          Dst:             JS_DefinePropertyValueValue
        - Src:             'quickjs.c:19291,21'
          Dst:             js_append_enumerate
        - Src:             'quickjs.c:19293,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:19307,21'
          Dst:             JS_CopyDataProperties
        - Src:             'quickjs.c:19323,34'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:19329,30'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:19332,28'
          Dst:             JS_IsString
        - Src:             'quickjs.c:19332,48'
          Dst:             JS_IsString
        - Src:             'quickjs.c:19333,30'
          Dst:             JS_ConcatString
        - Src:             'quickjs.c:19335,25'
          Dst:             JS_IsException
        - Src:             'quickjs.c:19339,25'
          Dst:             js_add_slow
        - Src:             'quickjs.c:19359,31'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:19365,27'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:19372,25'
          Dst:             JS_ConcatStringInPlace
        - Src:             'quickjs.c:19373,25'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:19375,52'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:19375,31'
          Dst:             JS_ConcatString
        - Src:             'quickjs.c:19376,29'
          Dst:             JS_IsException
        - Src:             'quickjs.c:19378,25'
          Dst:             set_value
        - Src:             'quickjs.c:19385,30'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:19388,25'
          Dst:             js_add_slow
        - Src:             'quickjs.c:19390,21'
          Dst:             set_value
        - Src:             'quickjs.c:19403,34'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:19409,30'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:19443,30'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:19459,30'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:19490,17'
          Dst:             js_binary_arith_slow
        - Src:             'quickjs.c:19506,25'
          Dst:             js_unary_arith_slow
        - Src:             'quickjs.c:19536,30'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:19539,25'
          Dst:             js_unary_arith_slow
        - Src:             'quickjs.c:19557,25'
          Dst:             js_unary_arith_slow
        - Src:             'quickjs.c:19575,25'
          Dst:             js_unary_arith_slow
        - Src:             'quickjs.c:19593,25'
          Dst:             js_post_inc_slow
        - Src:             'quickjs.c:19612,25'
          Dst:             js_post_inc_slow
        - Src:             'quickjs.c:19637,27'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:19638,25'
          Dst:             js_unary_arith_slow
        - Src:             'quickjs.c:19640,21'
          Dst:             set_value
        - Src:             'quickjs.c:19663,27'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:19664,25'
          Dst:             js_unary_arith_slow
        - Src:             'quickjs.c:19666,21'
          Dst:             set_value
        - Src:             'quickjs.c:19678,25'
          Dst:             js_not_slow
        - Src:             'quickjs.c:19698,25'
          Dst:             js_binary_logic_slow
        - Src:             'quickjs.c:19713,30'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:19719,25'
          Dst:             js_shr_slow
        - Src:             'quickjs.c:19739,25'
          Dst:             js_binary_logic_slow
        - Src:             'quickjs.c:19757,25'
          Dst:             js_binary_logic_slow
        - Src:             'quickjs.c:19775,25'
          Dst:             js_binary_logic_slow
        - Src:             'quickjs.c:19793,25'
          Dst:             js_binary_logic_slow
        - Src:             'quickjs.c:19819,13'
          Dst:             js_relational_slow
        - Src:             'quickjs.c:19820,13'
          Dst:             js_relational_slow
        - Src:             'quickjs.c:19821,13'
          Dst:             js_relational_slow
        - Src:             'quickjs.c:19822,13'
          Dst:             js_relational_slow
        - Src:             'quickjs.c:19823,13'
          Dst:             js_eq_slow
        - Src:             'quickjs.c:19824,13'
          Dst:             js_eq_slow
        - Src:             'quickjs.c:19825,13'
          Dst:             js_strict_eq_slow
        - Src:             'quickjs.c:19826,13'
          Dst:             js_strict_eq_slow
        - Src:             'quickjs.c:19830,17'
          Dst:             js_operator_in
        - Src:             'quickjs.c:19836,17'
          Dst:             js_operator_private_in
        - Src:             'quickjs.c:19842,17'
          Dst:             js_operator_instanceof
        - Src:             'quickjs.c:19852,24'
          Dst:             js_operator_typeof
        - Src:             'quickjs.c:19853,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:19854,26'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:19859,17'
          Dst:             js_operator_delete
        - Src:             'quickjs.c:19868,24'
          Dst:             get_u32
        - Src:             'quickjs.c:19872,23'
          Dst:             JS_DeleteGlobalVar
        - Src:             'quickjs.c:19882,27'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:19883,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:19885,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:19898,27'
          Dst:             JS_ToPropertyKey
        - Src:             'quickjs.c:19899,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:19901,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:19928,24'
          Dst:             get_u32
        - Src:             'quickjs.c:19929,24'
          Dst:             get_u32
        - Src:             'quickjs.c:19935,23'
          Dst:             JS_HasProperty
        - Src:             'quickjs.c:19940,31'
          Dst:             js_has_unscopable
        - Src:             'quickjs.c:19949,31'
          Dst:             JS_HasProperty
        - Src:             'quickjs.c:19953,33'
          Dst:             is_strict_mode
        - Src:             'quickjs.c:19954,33'
          Dst:             JS_ThrowReferenceErrorNotDefined
        - Src:             'quickjs.c:19959,35'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:19960,33'
          Dst:             JS_IsException
        - Src:             'quickjs.c:19963,25'
          Dst:             set_value
        - Src:             'quickjs.c:19967,31'
          Dst:             JS_HasProperty
        - Src:             'quickjs.c:19971,33'
          Dst:             is_strict_mode
        - Src:             'quickjs.c:19972,33'
          Dst:             JS_ThrowReferenceErrorNotDefined
        - Src:             'quickjs.c:19976,31'
          Dst:             JS_SetPropertyInternal
        - Src:             'quickjs.c:19978,25'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:19984,31'
          Dst:             JS_DeleteProperty
        - Src:             'quickjs.c:19987,25'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:19992,33'
          Dst:             JS_AtomToValue
        - Src:             'quickjs.c:19997,31'
          Dst:             JS_HasProperty
        - Src:             'quickjs.c:20003,35'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:20004,33'
          Dst:             JS_IsException
        - Src:             'quickjs.c:20014,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20062,17'
          Dst:             js_operator_typeof
        - Src:             'quickjs.c:20068,17'
          Dst:             js_operator_typeof
        - Src:             'quickjs.c:20074,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20080,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20085,13'
          Dst:             JS_ThrowInternalError
        - Src:             'quickjs.c:20091,9'
          Dst:             is_backtrace_needed
        - Src:             'quickjs.c:20096,9'
          Dst:             build_backtrace
        - Src:             'quickjs.c:20101,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20106,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20108,21'
          Dst:             JS_IteratorClose
        - Src:             'quickjs.c:20130,13'
          Dst:             close_var_refs
        - Src:             'quickjs.c:20134,13'
          Dst:             JS_FreeValue
    - functionName:    js_poll_interrupts
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7477
      functionLinenumberEnd: 7483
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __js_poll_interrupts
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7479,16'
          Dst:             __js_poll_interrupts
    - functionName:    js_check_stack_overflow
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1644
      functionLinenumberEnd: 1647
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_get_stack_pointer
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1646,10'
          Dst:             js_get_stack_pointer
    - functionName:    JS_ThrowStackOverflow
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7389
      functionLinenumberEnd: 7390
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_ThrowInternalError
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7390,12'
          Dst:             JS_ThrowInternalError
    - functionName:    __JS_NewShortBigInt
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    17
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_i8
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_i16
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_closure
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16999
      functionLinenumberEnd: 17049
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          126
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - JS_DefineAutoInitProperty
        - JS_DefinePropertyValue
        - JS_FreeValue
        - JS_IsException
        - JS_NewObjectClass
        - JS_NewObjectProto
        - JS_SetConstructorBit
        - js_closure2
        - js_function_set_properties
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:17005,16'
          Dst:             JS_NewObjectClass
        - Src:             'quickjs.c:17006,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:17007,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:17010,16'
          Dst:             js_closure2
        - Src:             'quickjs.c:17011,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:17018,5'
          Dst:             js_function_set_properties
        - Src:             'quickjs.c:17030,17'
          Dst:             JS_NewObjectProto
        - Src:             'quickjs.c:17031,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:17033,9'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:17039,9'
          Dst:             JS_SetConstructorBit
        - Src:             'quickjs.c:17040,9'
          Dst:             JS_DefineAutoInitProperty
        - Src:             'quickjs.c:17047,5'
          Dst:             JS_FreeValue
    - functionName:    JS_AtomToValue
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3210
      functionLinenumberEnd: 3211
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __JS_AtomToValue
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3211,12'
          Dst:             __JS_AtomToValue
    - functionName:    JS_ToObject
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39322
      functionLinenumberEnd: 39369
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          133
      EdgeCount:       29
      CyclomaticComplexity: 4
      functionsReached:
        - JS_DefinePropertyValue
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_NewObjectClass
        - JS_SetObjectData
        - JS_ThrowTypeError
        - JS_ToString
      functionUses:    51
      BranchProfiles:
        - Branch String:   'quickjs.c:39326,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:39330,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:39333,16'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:39347,19'
          Dst:             JS_ToString
        - Src:             'quickjs.c:39348,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39350,19'
          Dst:             JS_NewObjectClass
        - Src:             'quickjs.c:39351,18'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39352,17'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:39354,44'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:39354,17'
          Dst:             JS_SetObjectData
        - Src:             'quickjs.c:39356,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:0,0'
          Dst:             JS_NewObjectClass
        - Src:             'quickjs.c:39365,14'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39366,40'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:39366,13'
          Dst:             JS_SetObjectData
    - functionName:    JS_NewObject
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5447
      functionLinenumberEnd: 5449
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_NewObjectProtoClass
      functionUses:    23
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5449,12'
          Dst:             JS_NewObjectProtoClass
    - functionName:    js_build_arguments
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15770
      functionLinenumberEnd: 15803
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          110
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_NewObjectFromShape
        - js_dup_shape
        - js_malloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:15777,24'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:15778,32'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:15779,32'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:15781,38'
          Dst:             js_dup_shape
        - Src:             'quickjs.c:15781,11'
          Dst:             JS_NewObjectFromShape
        - Src:             'quickjs.c:15783,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:15790,15'
          Dst:             js_malloc
        - Src:             'quickjs.c:15794,22'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:15801,5'
          Dst:             JS_FreeValue
    - functionName:    js_build_mapped_arguments
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15833
      functionLinenumberEnd: 15881
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          188
      EdgeCount:       45
      CyclomaticComplexity: 13
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_NewObjectFromShape
        - free_var_ref
        - get_var_ref
        - js_create_var_ref
        - js_dup_shape
        - js_free
        - js_malloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:15841,24'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:15842,24'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:15844,38'
          Dst:             js_dup_shape
        - Src:             'quickjs.c:15844,11'
          Dst:             JS_NewObjectFromShape
        - Src:             'quickjs.c:15846,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:15853,15'
          Dst:             js_malloc
        - Src:             'quickjs.c:15857,23'
          Dst:             get_var_ref
        - Src:             'quickjs.c:15863,23'
          Dst:             js_create_var_ref
        - Src:             'quickjs.c:15867,21'
          Dst:             free_var_ref
        - Src:             'quickjs.c:15868,17'
          Dst:             js_free
        - Src:             'quickjs.c:15871,30'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:15879,5'
          Dst:             JS_FreeValue
    - functionName:    JS_NewObjectProto
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5436
      functionLinenumberEnd: 5437
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_NewObjectProtoClass
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5437,12'
          Dst:             JS_NewObjectProtoClass
    - functionName:    js_import_meta
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30328
      functionLinenumberEnd: 30346
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          40
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeAtom
        - JS_GetImportMeta
        - JS_GetScriptOrModuleName
        - JS_ThrowTypeError
        - js_find_loaded_module
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:30332,16'
          Dst:             JS_GetScriptOrModuleName
        - Src:             'quickjs.c:30338,9'
          Dst:             js_find_loaded_module
        - Src:             'quickjs.c:30339,5'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:30342,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:30345,12'
          Dst:             JS_GetImportMeta
    - functionName:    get_u16
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    56
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_create_array
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9201
      functionLinenumberEnd: 9222
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          75
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_NewArray
        - expand_fast_array
        - set_value
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:9206,11'
          Dst:             JS_NewArray
        - Src:             'quickjs.c:9207,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:9211,13'
          Dst:             expand_fast_array
        - Src:             'quickjs.c:9212,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9217,38'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:9219,9'
          Dst:             set_value
    - functionName:    JS_CallConstructorInternal
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20237
      functionLinenumberEnd: 20279
      functionDepth:   0
      returnType:      'N/A'
      argCount:        8
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          136
      EdgeCount:       33
      CyclomaticComplexity: 11
      functionsReached:
        - JS_CallInternal
        - JS_FreeValue
        - JS_IsException
        - JS_ThrowTypeError
        - JS_ThrowTypeErrorNotAConstructor
        - js_create_from_ctor
        - js_poll_interrupts
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20241,9'
          Dst:             js_poll_interrupts
        - Src:             'quickjs.c:20248,16'
          Dst:             JS_ThrowTypeErrorNotAConstructor
        - Src:             'quickjs.c:20254,20'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:20262,16'
          Dst:             JS_CallInternal
        - Src:             'quickjs.c:20266,15'
          Dst:             js_create_from_ctor
        - Src:             'quickjs.c:20267,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:20269,15'
          Dst:             JS_CallInternal
        - Src:             'quickjs.c:20271,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:20272,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20275,13'
          Dst:             JS_FreeValue
    - functionName:    js_create_array_free
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9225
      functionLinenumberEnd: 9249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          126
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_NewArray
        - expand_fast_array
        - set_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:9230,11'
          Dst:             JS_NewArray
        - Src:             'quickjs.c:9231,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:9235,13'
          Dst:             expand_fast_array
        - Src:             'quickjs.c:9236,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9239,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9246,9'
          Dst:             set_value
    - functionName:    js_function_apply
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40629
      functionLinenumberEnd: 40652
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          100
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - JS_Call
        - JS_CallConstructor2
        - build_arg_list
        - check_function
        - free_arg_list
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:40634,9'
          Dst:             check_function
        - Src:             'quickjs.c:40640,16'
          Dst:             JS_Call
        - Src:             'quickjs.c:40642,11'
          Dst:             build_arg_list
        - Src:             'quickjs.c:40646,15'
          Dst:             JS_CallConstructor2
        - Src:             'quickjs.c:40648,15'
          Dst:             JS_Call
        - Src:             'quickjs.c:40650,5'
          Dst:             free_arg_list
    - functionName:    JS_GetPrototype
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7627
      functionLinenumberEnd: 7647
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          95
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - JS_DupValue
        - JS_GetPrototypePrimitive
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7642,19'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:7644,32'
          Dst:             JS_GetPrototypePrimitive
        - Src:             'quickjs.c:7644,15'
          Dst:             JS_DupValue
    - functionName:    JS_CallConstructor2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20284
      functionLinenumberEnd: 20285
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_CallConstructorInternal
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20285,12'
          Dst:             JS_CallConstructorInternal
    - functionName:    JS_CheckBrand
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8115
      functionLinenumberEnd: 8149
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          152
      EdgeCount:       41
      CyclomaticComplexity: 13
      functionsReached:
        - JS_ThrowTypeError
        - JS_ThrowTypeErrorNotAnObject
        - get_shape_prop
        - js_class_has_bytecode
        - js_symbol_to_atom
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:8125,10'
          Dst:             js_class_has_bytecode
        - Src:             'quickjs.c:8130,11'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:8132,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:8143,9'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:8147,37'
          Dst:             js_symbol_to_atom
        - Src:             'quickjs.c:8147,11'
          Dst:             get_shape_prop
    - functionName:    JS_AddBrand
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8064
      functionLinenumberEnd: 8110
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          176
      EdgeCount:       42
      CyclomaticComplexity: 13
      functionsReached:
        - JS_DupValue
        - JS_FreeAtom
        - JS_FreeValue
        - JS_IsException
        - JS_IsObject
        - JS_NewSymbolFromAtom
        - JS_ThrowTypeError
        - JS_ThrowTypeErrorNotAnObject
        - add_property
        - get_shape_prop
        - js_symbol_to_atom
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:8072,9'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:8076,11'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:8079,17'
          Dst:             JS_NewSymbolFromAtom
        - Src:             'quickjs.c:8080,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:8082,14'
          Dst:             add_property
        - Src:             'quickjs.c:8084,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:8087,23'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:8089,17'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:8091,18'
          Dst:             js_symbol_to_atom
        - Src:             'quickjs.c:8093,9'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:8095,15'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:8097,13'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:8098,13'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:8101,14'
          Dst:             add_property
        - Src:             'quickjs.c:8102,9'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:8107,9'
          Dst:             JS_FreeAtom
    - functionName:    JS_ThrowTypeErrorReadOnly
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7334
      functionLinenumberEnd: 7342
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          42
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - __JS_ThrowTypeErrorAtom
        - is_strict_mode
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7336,44'
          Dst:             is_strict_mode
        - Src:             'quickjs.c:7337,9'
          Dst:             __JS_ThrowTypeErrorAtom
    - functionName:    JS_ThrowSyntaxErrorVarRedeclaration
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10412
      functionLinenumberEnd: 10413
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __JS_ThrowSyntaxErrorAtom
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:10413,12'
          Dst:             __JS_ThrowSyntaxErrorAtom
    - functionName:    JS_ThrowReferenceErrorUninitialized
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7427
      functionLinenumberEnd: 7432
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_AtomGetStr
        - JS_ThrowReferenceError
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7431,35'
          Dst:             JS_AtomGetStr
        - Src:             'quickjs.c:7429,12'
          Dst:             JS_ThrowReferenceError
    - functionName:    JS_ThrowReferenceError
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7345
      functionLinenumberEnd: 7353
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_ThrowError
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7350,11'
          Dst:             JS_ThrowError
    - functionName:    JS_EvalObject
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36742
      functionLinenumberEnd: 36756
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          50
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_DupValue
        - JS_EvalInternal
        - JS_FreeCString
        - JS_IsString
        - JS_ToCStringLen
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:36747,10'
          Dst:             JS_IsString
        - Src:             'quickjs.c:36748,16'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:36749,11'
          Dst:             JS_ToCStringLen
        - Src:             'quickjs.c:36752,11'
          Dst:             JS_EvalInternal
        - Src:             'quickjs.c:36753,5'
          Dst:             JS_FreeCString
    - functionName:    build_arg_list
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40575
      functionLinenumberEnd: 40623
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         44
      ICount:          213
      EdgeCount:       61
      CyclomaticComplexity: 19
      functionsReached:
        - JS_DupValue
        - JS_GetPropertyUint32
        - JS_IsException
        - JS_ThrowRangeError
        - JS_ThrowTypeError
        - free_arg_list
        - js_get_length64
        - js_mallocz
        - max_uint32
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:40582,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:40585,9'
          Dst:             js_get_length64
        - Src:             'quickjs.c:40589,9'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:40595,44'
          Dst:             max_uint32
        - Src:             'quickjs.c:40595,11'
          Dst:             js_mallocz
        - Src:             'quickjs.c:40604,26'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:40608,26'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:40613,19'
          Dst:             JS_GetPropertyUint32
        - Src:             'quickjs.c:40614,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40615,17'
          Dst:             free_arg_list
    - functionName:    JS_Call
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20143
      functionLinenumberEnd: 20144
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_CallInternal
      functionUses:    84
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20144,12'
          Dst:             JS_CallInternal
    - functionName:    free_arg_list
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40564
      functionLinenumberEnd: 40570
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          38
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeValue
        - js_free
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:40567,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:40569,5'
          Dst:             js_free
    - functionName:    JS_NewRegexp
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46949
      functionLinenumberEnd: 46974
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          65
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_NewObjectFromShape
        - JS_ThrowTypeError
        - js_dup_shape
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:46958,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:46962,38'
          Dst:             js_dup_shape
        - Src:             'quickjs.c:46962,11'
          Dst:             JS_NewObjectFromShape
        - Src:             'quickjs.c:46963,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:46971,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:46972,5'
          Dst:             JS_FreeValue
    - functionName:    js_dynamic_import
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30493
      functionLinenumberEnd: 30590
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          289
      EdgeCount:       64
      CyclomaticComplexity: 19
      functionsReached:
        - JS_AtomToValue
        - JS_Call
        - JS_DefinePropertyValue
        - JS_EnqueueJob
        - JS_FreeAtom
        - JS_FreePropertyEnum
        - JS_FreeValue
        - JS_GetException
        - JS_GetOwnPropertyNamesInternal
        - JS_GetPropertyInternal
        - JS_GetScriptOrModuleName
        - JS_IsException
        - JS_IsObject
        - JS_IsString
        - JS_IsUndefined
        - JS_NewObjectProto
        - JS_NewPromiseCapability
        - JS_ThrowTypeError
        - JS_ToString
        - js_dynamic_import_job
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:30499,16'
          Dst:             JS_GetScriptOrModuleName
        - Src:             'quickjs.c:30503,24'
          Dst:             JS_AtomToValue
        - Src:             'quickjs.c:30504,5'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:30505,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:30508,15'
          Dst:             JS_NewPromiseCapability
        - Src:             'quickjs.c:30509,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:30510,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30515,21'
          Dst:             JS_ToString
        - Src:             'quickjs.c:30516,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:30519,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:30520,14'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:30521,13'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:30524,26'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:30525,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:30527,14'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:30532,18'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:30533,17'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:30536,26'
          Dst:             JS_NewObjectProto
        - Src:             'quickjs.c:30537,17'
          Dst:             JS_GetOwnPropertyNamesInternal
        - Src:             'quickjs.c:30542,23'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:30543,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:30545,22'
          Dst:             JS_IsString
        - Src:             'quickjs.c:30546,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30547,21'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:30550,21'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:30553,21'
          Dst:             JS_FreePropertyEnum
        - Src:             'quickjs.c:30557,13'
          Dst:             JS_FreePropertyEnum
        - Src:             'quickjs.c:30562,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30574,5'
          Dst:             JS_EnqueueJob
        - Src:             'quickjs.c:30574,5'
          Dst:             js_dynamic_import_job
        - Src:             'quickjs.c:30576,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30577,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30578,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30579,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30580,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30583,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30584,11'
          Dst:             JS_GetException
        - Src:             'quickjs.c:30585,11'
          Dst:             JS_Call
        - Src:             'quickjs.c:30587,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30588,5'
          Dst:             JS_FreeValue
    - functionName:    JS_IsUninitialized
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 644
      functionLinenumberEnd: 645
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    16
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_HasProperty
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8553
      functionLinenumberEnd: 8592
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          130
      EdgeCount:       37
      CyclomaticComplexity: 12
      functionsReached:
        - JS_AtomIsNumericIndex
        - JS_DupValue
        - JS_FreeValue
        - JS_GetOwnPropertyInternal
      functionUses:    24
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:8566,24'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:8568,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:8573,9'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:8574,15'
          Dst:             JS_GetOwnPropertyInternal
        - Src:             'quickjs.c:8575,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:8580,19'
          Dst:             JS_AtomIsNumericIndex
    - functionName:    is_strict_mode
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2450
      functionLinenumberEnd: 2452
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          22
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_ThrowReferenceErrorNotDefined
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7420
      functionLinenumberEnd: 7424
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_AtomGetStr
        - JS_ThrowReferenceError
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7423,35'
          Dst:             JS_AtomGetStr
        - Src:             'quickjs.c:7422,12'
          Dst:             JS_ThrowReferenceError
    - functionName:    JS_SetPropertyInternal
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9264
      functionLinenumberEnd: 9531
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         150
      ICount:          830
      EdgeCount:       211
      CyclomaticComplexity: 63
      functionsReached:
        - JS_AtomIsNumericIndex
        - JS_AutoInitProperty
        - JS_CreateProperty
        - JS_DefineProperty
        - JS_DupValue
        - JS_FreeValue
        - JS_GetOwnPropertyInternal
        - JS_GetPrototypePrimitive
        - JS_IsException
        - JS_IsUndefined
        - JS_SetPropertyValue
        - JS_ThrowTypeErrorOrFalse
        - JS_ThrowTypeErrorReadOnly
        - JS_ToBigInt64Free
        - JS_ToNumberFree
        - __JS_AtomIsTaggedInt
        - __JS_AtomToUInt32
        - __JS_ThrowTypeErrorAtom
        - __assert_fail
        - add_fast_array_element
        - add_property
        - call_setter
        - get_shape_prop
        - set_array_length
        - set_value
      functionUses:    10
      BranchProfiles:
        - Branch String:   'quickjs.c:9281,13'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:9283,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9284,17'
          Dst:             __JS_ThrowTypeErrorAtom
        - Src:             'quickjs.c:9287,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9288,17'
          Dst:             __JS_ThrowTypeErrorAtom
        - Src:             'quickjs.c:9293,22'
          Dst:             JS_GetPrototypePrimitive
        - Src:             'quickjs.c:9306,11'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:9311,13'
          Dst:             set_value
        - Src:             'quickjs.c:9314,13'
          Dst:             __assert_fail
        - Src:             'quickjs.c:9315,13'
          Dst:             __assert_fail
        - Src:             'quickjs.c:9316,20'
          Dst:             set_array_length
        - Src:             'quickjs.c:9318,20'
          Dst:             call_setter
        - Src:             'quickjs.c:9324,13'
          Dst:             set_value
        - Src:             'quickjs.c:9328,17'
          Dst:             JS_AutoInitProperty
        - Src:             'quickjs.c:9329,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9341,21'
          Dst:             __JS_AtomIsTaggedInt
        - Src:             'quickjs.c:9342,36'
          Dst:             __JS_AtomToUInt32
        - Src:             'quickjs.c:9345,36'
          Dst:             JS_SetPropertyValue
        - Src:             'quickjs.c:9354,27'
          Dst:             JS_AtomIsNumericIndex
        - Src:             'quickjs.c:9357,29'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9366,37'
          Dst:             JS_ToBigInt64Free
        - Src:             'quickjs.c:9369,39'
          Dst:             JS_ToNumberFree
        - Src:             'quickjs.c:9370,33'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9371,37'
          Dst:             JS_IsException
        - Src:             'quickjs.c:9375,29'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9386,32'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:9389,25'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9390,25'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9395,32'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:9398,25'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9400,29'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9406,37'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:9410,39'
          Dst:             call_setter
        - Src:             'quickjs.c:9411,33'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9412,33'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9415,33'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9419,43'
          Dst:             JS_DefineProperty
        - Src:             'quickjs.c:9422,37'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9439,15'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:9442,24'
          Dst:             call_setter
        - Src:             'quickjs.c:9445,21'
          Dst:             JS_AutoInitProperty
        - Src:             'quickjs.c:9457,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9458,16'
          Dst:             JS_ThrowTypeErrorOrFalse
        - Src:             'quickjs.c:9462,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9463,16'
          Dst:             JS_ThrowTypeErrorOrFalse
        - Src:             'quickjs.c:9469,17'
          Dst:             __JS_AtomIsTaggedInt
        - Src:             'quickjs.c:9470,32'
          Dst:             __JS_AtomToUInt32
        - Src:             'quickjs.c:9473,28'
          Dst:             add_fast_array_element
        - Src:             'quickjs.c:9483,18'
          Dst:             add_property
        - Src:             'quickjs.c:9485,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9493,15'
          Dst:             JS_GetOwnPropertyInternal
        - Src:             'quickjs.c:9495,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9500,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9501,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9502,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9503,24'
          Dst:             JS_ThrowTypeErrorOrFalse
        - Src:             'quickjs.c:9505,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9509,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9510,28'
          Dst:             JS_ThrowTypeErrorReadOnly
        - Src:             'quickjs.c:9513,19'
          Dst:             JS_DefineProperty
        - Src:             'quickjs.c:9516,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9520,19'
          Dst:             JS_CreateProperty
        - Src:             'quickjs.c:9527,13'
          Dst:             JS_FreeValue
    - functionName:    set_value
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2252
      functionLinenumberEnd: 2257
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_FreeValue
      functionUses:    73
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:2256,5'
          Dst:             JS_FreeValue
    - functionName:    JS_ThrowReferenceErrorUninitialized2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7437
      functionLinenumberEnd: 7447
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          44
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_ThrowReferenceErrorUninitialized
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7446,12'
          Dst:             JS_ThrowReferenceErrorUninitialized
    - functionName:    close_lexical_var
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17174
      functionLinenumberEnd: 17184
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - close_var_ref
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:17181,9'
          Dst:             close_var_ref
    - functionName:    get_var_ref
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16626
      functionLinenumberEnd: 16681
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          139
      EdgeCount:       24
      CyclomaticComplexity: 6
      functionsReached:
        - __assert_fail
        - add_gc_object
        - js_malloc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:16644,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:16646,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:16650,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:16656,15'
          Dst:             js_malloc
        - Src:             'quickjs.c:16660,5'
          Dst:             add_gc_object
    - functionName:    add_property
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8780
      functionLinenumberEnd: 8838
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          218
      EdgeCount:       58
      CyclomaticComplexity: 17
      functionsReached:
        - JS_IsObject
        - __JS_AtomIsTaggedInt
        - __assert_fail
        - add_shape_property
        - find_hashed_shape_prop
        - js_clone_shape
        - js_dup_shape
        - js_free_shape
        - js_realloc
        - js_shape_hash_link
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:8783,9'
          Dst:             __JS_AtomIsTaggedInt
        - Src:             'quickjs.c:8793,21'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:8795,25'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:8807,18'
          Dst:             find_hashed_shape_prop
        - Src:             'quickjs.c:8813,28'
          Dst:             js_realloc
        - Src:             'quickjs.c:8819,24'
          Dst:             js_dup_shape
        - Src:             'quickjs.c:8820,13'
          Dst:             js_free_shape
        - Src:             'quickjs.c:8824,22'
          Dst:             js_clone_shape
        - Src:             'quickjs.c:8829,13'
          Dst:             js_shape_hash_link
        - Src:             'quickjs.c:8830,13'
          Dst:             js_free_shape
        - Src:             'quickjs.c:8834,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:8835,9'
          Dst:             add_shape_property
    - functionName:    JS_GetGlobalVarRef
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10459
      functionLinenumberEnd: 10491
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          134
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - JS_AtomToValue
        - JS_DupValue
        - JS_HasProperty
        - JS_IsUninitialized
        - JS_ThrowReferenceErrorUninitialized
        - JS_ThrowTypeErrorReadOnly
        - get_shape_prop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:10466,11'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:10470,13'
          Dst:             JS_IsUninitialized
        - Src:             'quickjs.c:10471,13'
          Dst:             JS_ThrowReferenceErrorUninitialized
        - Src:             'quickjs.c:10475,20'
          Dst:             JS_ThrowTypeErrorReadOnly
        - Src:             'quickjs.c:10477,17'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:10480,15'
          Dst:             JS_HasProperty
        - Src:             'quickjs.c:10484,21'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:10489,13'
          Dst:             JS_AtomToValue
    - functionName:    JS_ToBoolFree
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10760
      functionLinenumberEnd: 10822
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          132
      EdgeCount:       29
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeValue
      functionUses:    39
      BranchProfiles:
        - Branch String:   'quickjs.c:10762,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:10774,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:10780,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:10801,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:10809,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:10818,13'
          Dst:             JS_FreeValue
    - functionName:    js_for_in_start
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15948
      functionLinenumberEnd: 15953
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_IsException
        - build_for_in_iterator
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:15949,14'
          Dst:             build_for_in_iterator
        - Src:             'quickjs.c:15950,9'
          Dst:             JS_IsException
    - functionName:    js_for_in_next
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16020
      functionLinenumberEnd: 16111
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         51
      ICount:          260
      EdgeCount:       71
      CyclomaticComplexity: 22
      functionsReached:
        - JS_AtomToValue
        - JS_DefinePropertyValue
        - JS_FreePropertyEnum
        - JS_GetOwnPropertyInternal
        - JS_GetOwnPropertyNamesInternal
        - JS_GetPrototypeFree
        - JS_IsException
        - JS_IsNull
        - JS_IsUndefined
        - __JS_AtomFromUInt32
        - js_for_in_prepare_prototype_chain_enum
        - js_poll_interrupts
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:16040,17'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:16040,39'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:16044,23'
          Dst:             js_for_in_prepare_prototype_chain_enum
        - Src:             'quickjs.c:16051,23'
          Dst:             JS_GetPrototypeFree
        - Src:             'quickjs.c:16052,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:16054,17'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:16058,17'
          Dst:             js_poll_interrupts
        - Src:             'quickjs.c:16061,17'
          Dst:             JS_GetOwnPropertyNamesInternal
        - Src:             'quickjs.c:16066,13'
          Dst:             JS_FreePropertyEnum
        - Src:             'quickjs.c:16072,24'
          Dst:             __JS_AtomFromUInt32
        - Src:             'quickjs.c:16081,27'
          Dst:             JS_GetOwnPropertyInternal
        - Src:             'quickjs.c:16087,25'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:16095,19'
          Dst:             JS_GetOwnPropertyInternal
        - Src:             'quickjs.c:16103,13'
          Dst:             JS_AtomToValue
    - functionName:    js_for_of_start
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16282
      functionLinenumberEnd: 16295
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          48
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeValue
        - JS_GetIterator
        - JS_GetPropertyInternal
        - JS_IsException
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:16285,11'
          Dst:             JS_GetIterator
        - Src:             'quickjs.c:16286,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:16288,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:16290,14'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:16291,9'
          Dst:             JS_IsException
    - functionName:    js_for_of_next
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16302
      functionLinenumberEnd: 16326
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          90
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_IsUndefined
        - JS_IteratorNext
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:16306,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:16307,17'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:16308,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:16313,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:16318,17'
          Dst:             JS_FreeValue
    - functionName:    js_for_await_of_next
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16329
      functionLinenumberEnd: 16341
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_Call
        - JS_IsException
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:16336,11'
          Dst:             JS_Call
        - Src:             'quickjs.c:16337,9'
          Dst:             JS_IsException
    - functionName:    js_iterator_get_value_done
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16363
      functionLinenumberEnd: 16381
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          57
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_IsObject
        - JS_IteratorGetCompleteValue
        - JS_ThrowTypeError
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:16367,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:16368,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:16371,13'
          Dst:             JS_IteratorGetCompleteValue
        - Src:             'quickjs.c:16372,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:16374,5'
          Dst:             JS_FreeValue
    - functionName:    JS_IteratorClose
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16242
      functionLinenumberEnd: 16276
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          109
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - JS_CallFree
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsNull
        - JS_IsObject
        - JS_IsUndefined
        - JS_Throw
        - JS_ThrowTypeErrorNotAnObject
      functionUses:    26
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:16254,14'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:16255,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:16259,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:16259,35'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:16262,11'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:16264,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:16266,21'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:16267,13'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:16271,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:16274,9'
          Dst:             JS_Throw
    - functionName:    JS_NewSymbolFromAtom
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3117
      functionLinenumberEnd: 3126
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
        - JS_NewSymbol
        - __JS_AtomIsTaggedInt
        - __assert_fail
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3121,5'
          Dst:             __JS_AtomIsTaggedInt
        - Src:             'quickjs.c:3121,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:3122,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:3124,5'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:3125,12'
          Dst:             JS_NewSymbol
    - functionName:    JS_GetPrivateField
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8010
      functionLinenumberEnd: 8029
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          93
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - JS_DupValue
        - JS_ThrowTypeErrorNotASymbol
        - JS_ThrowTypeErrorNotAnObject
        - JS_ThrowTypeErrorPrivateNotFound
        - get_shape_prop
        - js_symbol_to_atom
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:8017,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:8020,16'
          Dst:             JS_ThrowTypeErrorNotASymbol
        - Src:             'quickjs.c:8021,12'
          Dst:             js_symbol_to_atom
        - Src:             'quickjs.c:8023,11'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:8025,9'
          Dst:             JS_ThrowTypeErrorPrivateNotFound
        - Src:             'quickjs.c:8028,12'
          Dst:             JS_DupValue
    - functionName:    JS_SetPrivateField
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8033
      functionLinenumberEnd: 8059
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          89
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - JS_FreeValue
        - JS_ThrowTypeErrorNotASymbol
        - JS_ThrowTypeErrorNotAnObject
        - JS_ThrowTypeErrorPrivateNotFound
        - get_shape_prop
        - js_symbol_to_atom
        - set_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:8040,9'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:8045,9'
          Dst:             JS_ThrowTypeErrorNotASymbol
        - Src:             'quickjs.c:8048,12'
          Dst:             js_symbol_to_atom
        - Src:             'quickjs.c:8050,11'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:8052,9'
          Dst:             JS_ThrowTypeErrorPrivateNotFound
        - Src:             'quickjs.c:8054,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:8057,5'
          Dst:             set_value
    - functionName:    JS_DefinePrivateField
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7975
      functionLinenumberEnd: 8006
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          93
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - JS_FreeValue
        - JS_ThrowTypeErrorNotASymbol
        - JS_ThrowTypeErrorNotAnObject
        - __JS_ThrowTypeErrorAtom
        - add_property
        - get_shape_prop
        - js_symbol_to_atom
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7982,9'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:7987,9'
          Dst:             JS_ThrowTypeErrorNotASymbol
        - Src:             'quickjs.c:7990,12'
          Dst:             js_symbol_to_atom
        - Src:             'quickjs.c:7992,11'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:7994,9'
          Dst:             __JS_ThrowTypeErrorAtom
        - Src:             'quickjs.c:7998,10'
          Dst:             add_property
        - Src:             'quickjs.c:8001,9'
          Dst:             JS_FreeValue
    - functionName:    JS_DefineObjectName
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10378
      functionLinenumberEnd: 10386
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          51
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_AtomToString
        - JS_DefinePropertyValue
        - JS_IsObject
        - js_object_has_name
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:10380,9'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:10381,10'
          Dst:             js_object_has_name
        - Src:             'quickjs.c:10382,56'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:10382,9'
          Dst:             JS_DefinePropertyValue
    - functionName:    JS_DefineObjectNameComputed
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10390
      functionLinenumberEnd: 10406
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          61
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - JS_DefinePropertyValue
        - JS_FreeAtom
        - JS_IsException
        - JS_IsObject
        - JS_ValueToAtom
        - js_get_function_name
        - js_object_has_name
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:10391,9'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:10392,10'
          Dst:             js_object_has_name
        - Src:             'quickjs.c:10395,16'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:10398,20'
          Dst:             js_get_function_name
        - Src:             'quickjs.c:10399,9'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:10400,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:10402,13'
          Dst:             JS_DefinePropertyValue
    - functionName:    JS_SetPrototypeInternal
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7499
      functionLinenumberEnd: 7585
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         60
      ICount:          241
      EdgeCount:       84
      CyclomaticComplexity: 26
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_ThrowTypeError
        - JS_ThrowTypeErrorNotAnObject
        - js_shape_prepare_update
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7515,13'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:7532,17'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:7545,13'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:7553,13'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:7565,21'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:7574,9'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:7577,9'
          Dst:             js_shape_prepare_update
        - Src:             'quickjs.c:7581,9'
          Dst:             JS_FreeValue
    - functionName:    js_method_set_home_object
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5484
      functionLinenumberEnd: 5505
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          75
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - js_class_has_bytecode
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5491,10'
          Dst:             js_class_has_bytecode
        - Src:             'quickjs.c:5497,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:5500,18'
          Dst:             JS_DupValue
    - functionName:    JS_ValueToAtom
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8603
      functionLinenumberEnd: 8626
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          71
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - JS_DupAtom
        - JS_IsException
        - JS_NewAtomStr
        - JS_ToPropertyKey
        - __JS_AtomFromUInt32
        - js_get_atom_index
        - js_symbol_to_atom
      functionUses:    34
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:8610,16'
          Dst:             __JS_AtomFromUInt32
        - Src:             'quickjs.c:8613,32'
          Dst:             js_get_atom_index
        - Src:             'quickjs.c:8613,16'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:8616,15'
          Dst:             JS_ToPropertyKey
        - Src:             'quickjs.c:8617,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:8620,20'
          Dst:             js_symbol_to_atom
        - Src:             'quickjs.c:8622,20'
          Dst:             JS_NewAtomStr
    - functionName:    js_method_set_properties
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5524
      functionLinenumberEnd: 5540
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          66
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - JS_ConcatString3
        - JS_DefinePropertyValue
        - JS_IsException
        - js_get_function_name
        - js_method_set_home_object
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5527,16'
          Dst:             js_get_function_name
        - Src:             'quickjs.c:0,0'
          Dst:             JS_ConcatString3
        - Src:             'quickjs.c:5533,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:5535,9'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:5538,5'
          Dst:             js_method_set_home_object
    - functionName:    JS_DefineProperty
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9952
      functionLinenumberEnd: 10245
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         211
      ICount:          997
      EdgeCount:       296
      CyclomaticComplexity: 87
      functionsReached:
        - JS_AtomIsNumericIndex1
        - JS_AutoInitProperty
        - JS_CreateProperty
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_IsFunction
        - JS_IsUndefined
        - JS_NumberIsInteger
        - JS_NumberIsNegativeOrMinusZero
        - JS_SetPropertyValue
        - JS_ThrowTypeErrorNotAnObject
        - JS_ThrowTypeErrorOrFalse
        - JS_ToArrayLengthFree
        - __JS_AtomIsTaggedInt
        - __JS_AtomToUInt32
        - __JS_NewFloat64
        - __assert_fail
        - check_define_prop_flags
        - convert_fast_array_to_array
        - free_var_ref
        - get_prop_flags
        - get_shape_prop
        - js_global_object_find_uninitialized_var
        - js_same_value
        - js_shape_prepare_update
        - js_update_property_flags
        - remove_global_object_property
        - set_array_length
        - set_value
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:9959,9'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:9965,11'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:9971,38'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:9970,17'
          Dst:             JS_ToArrayLengthFree
        - Src:             'quickjs.c:9975,33'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:9977,19'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:9978,13'
          Dst:             __assert_fail
        - Src:             'quickjs.c:9981,14'
          Dst:             check_define_prop_flags
        - Src:             'quickjs.c:9983,20'
          Dst:             JS_ThrowTypeErrorOrFalse
        - Src:             'quickjs.c:9988,17'
          Dst:             JS_AutoInitProperty
        - Src:             'quickjs.c:9998,21'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:10003,21'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:10010,25'
          Dst:             js_shape_prepare_update
        - Src:             'quickjs.c:10015,33'
          Dst:             remove_global_object_property
        - Src:             'quickjs.c:10018,25'
          Dst:             free_var_ref
        - Src:             'quickjs.c:10020,25'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:10041,25'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:10043,25'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:10048,25'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:10050,25'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:10058,35'
          Dst:             js_global_object_find_uninitialized_var
        - Src:             'quickjs.c:10064,25'
          Dst:             js_shape_prepare_update
        - Src:             'quickjs.c:10064,25'
          Dst:             js_shape_prepare_update
        - Src:             'quickjs.c:10066,29'
          Dst:             free_var_ref
        - Src:             'quickjs.c:10070,25'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:10072,25'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:10086,30'
          Dst:             js_same_value
        - Src:             'quickjs.c:10099,34'
          Dst:             js_same_value
        - Src:             'quickjs.c:10104,39'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:10103,29'
          Dst:             set_value
        - Src:             'quickjs.c:10110,36'
          Dst:             JS_ThrowTypeErrorOrFalse
        - Src:             'quickjs.c:10112,29'
          Dst:             js_shape_prepare_update
        - Src:             'quickjs.c:10120,36'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:10121,29'
          Dst:             free_var_ref
        - Src:             'quickjs.c:10130,56'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:10130,31'
          Dst:             set_array_length
        - Src:             'quickjs.c:10141,31'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:10142,29'
          Dst:             js_update_property_flags
        - Src:             'quickjs.c:10149,25'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:10150,39'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:10153,29'
          Dst:             js_update_property_flags
        - Src:             'quickjs.c:10166,13'
          Dst:             js_update_property_flags
        - Src:             'quickjs.c:10177,17'
          Dst:             __JS_AtomIsTaggedInt
        - Src:             'quickjs.c:10178,23'
          Dst:             __JS_AtomToUInt32
        - Src:             'quickjs.c:10180,34'
          Dst:             get_prop_flags
        - Src:             'quickjs.c:10185,29'
          Dst:             convert_fast_array_to_array
        - Src:             'quickjs.c:10191,67'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:10191,25'
          Dst:             set_value
        - Src:             'quickjs.c:10201,18'
          Dst:             __JS_AtomIsTaggedInt
        - Src:             'quickjs.c:10203,23'
          Dst:             JS_AtomIsNumericIndex1
        - Src:             'quickjs.c:10204,21'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:10206,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:10208,23'
          Dst:             JS_NumberIsInteger
        - Src:             'quickjs.c:10210,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:10214,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:10215,28'
          Dst:             JS_ThrowTypeErrorOrFalse
        - Src:             'quickjs.c:10217,23'
          Dst:             JS_NumberIsNegativeOrMinusZero
        - Src:             'quickjs.c:10218,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:10220,28'
          Dst:             JS_ThrowTypeErrorOrFalse
        - Src:             'quickjs.c:10225,19'
          Dst:             __JS_AtomToUInt32
        - Src:             'quickjs.c:10229,24'
          Dst:             JS_ThrowTypeErrorOrFalse
        - Src:             'quickjs.c:10231,26'
          Dst:             get_prop_flags
        - Src:             'quickjs.c:10234,24'
          Dst:             JS_ThrowTypeErrorOrFalse
        - Src:             'quickjs.c:10237,82'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:10237,24'
          Dst:             JS_SetPropertyValue
        - Src:             'quickjs.c:10244,12'
          Dst:             JS_CreateProperty
    - functionName:    JS_FreeAtom
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3312
      functionLinenumberEnd: 3315
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          26
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __JS_AtomIsConst
        - __JS_FreeAtom
      functionUses:    158
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3313,10'
          Dst:             __JS_AtomIsConst
        - Src:             'quickjs.c:3314,9'
          Dst:             __JS_FreeAtom
    - functionName:    js_op_define_class
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17057
      functionLinenumberEnd: 17146
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          261
      EdgeCount:       53
      CyclomaticComplexity: 16
      functionsReached:
        - JS_DefineObjectName
        - JS_DefineObjectNameComputed
        - JS_DefinePropertyValue
        - JS_DupValue
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsConstructor
        - JS_IsException
        - JS_IsNull
        - JS_IsObject
        - JS_NewObjectProto
        - JS_NewObjectProtoClass
        - JS_SetConstructorBit
        - JS_ThrowTypeError
        - __assert_fail
        - js_closure2
        - js_method_set_home_object
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:17066,13'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:17070,18'
          Dst:             JS_IsConstructor
        - Src:             'quickjs.c:17074,28'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:17075,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:17077,18'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:17077,46'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:17084,24'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:0,0'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:17087,13'
          Dst:             JS_NewObjectProto
        - Src:             'quickjs.c:17088,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:17092,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:17093,12'
          Dst:             JS_NewObjectProtoClass
        - Src:             'quickjs.c:17095,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:17097,12'
          Dst:             js_closure2
        - Src:             'quickjs.c:17099,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:17101,5'
          Dst:             js_method_set_home_object
        - Src:             'quickjs.c:17102,5'
          Dst:             JS_SetConstructorBit
        - Src:             'quickjs.c:17104,5'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:17109,13'
          Dst:             JS_DefineObjectNameComputed
        - Src:             'quickjs.c:17113,13'
          Dst:             JS_DefineObjectName
        - Src:             'quickjs.c:17120,32'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:17119,9'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:17126,32'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:17125,9'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:17131,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:17132,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:0,0'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:17138,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:17139,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:17140,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:17141,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:17142,5'
          Dst:             JS_FreeValue
    - functionName:    JS_GetPropertyValue
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8630
      functionLinenumberEnd: 8701
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         63
      ICount:          386
      EdgeCount:       81
      CyclomaticComplexity: 20
      functionsReached:
        - JS_DupValue
        - JS_FreeAtom
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsNull
        - JS_IsUndefined
        - JS_NewBigInt64
        - JS_NewBigUint64
        - JS_ThrowTypeError
        - JS_ValueToAtom
        - __JS_NewFloat64
        - fromfp16
      functionUses:    11
      BranchProfiles:
        - Branch String:   'quickjs.c:8641,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:8645,20'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:8648,20'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:8667,20'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:8670,20'
          Dst:             JS_NewBigInt64
        - Src:             'quickjs.c:8673,20'
          Dst:             JS_NewBigUint64
        - Src:             'quickjs.c:8676,41'
          Dst:             fromfp16
        - Src:             'quickjs.c:8676,20'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:8679,20'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:8682,20'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:8689,13'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:8689,36'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:8690,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:8691,20'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:8693,16'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:8694,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:8697,15'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:8698,9'
          Dst:             JS_FreeAtom
    - functionName:    JS_ToPropertyKey
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13267
      functionLinenumberEnd: 13268
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_ToStringInternal
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:13268,12'
          Dst:             JS_ToStringInternal
    - functionName:    JS_SetPropertyValue
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9548
      functionLinenumberEnd: 9669
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         82
      ICount:          474
      EdgeCount:       108
      CyclomaticComplexity: 28
      functionsReached:
        - JS_FreeAtom
        - JS_FreeValue
        - JS_SetPropertyInternal
        - JS_ToBigInt64Free
        - JS_ToFloat64Free
        - JS_ToInt32Free
        - JS_ToUint8ClampFree
        - JS_ValueToAtom
        - add_fast_array_element
        - set_value
        - tofp16
      functionUses:    7
      BranchProfiles:
        - Branch String:   'quickjs.c:9559,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:9569,24'
          Dst:             add_fast_array_element
        - Src:             'quickjs.c:9571,13'
          Dst:             set_value
        - Src:             'quickjs.c:9576,13'
          Dst:             set_value
        - Src:             'quickjs.c:9581,13'
          Dst:             set_value
        - Src:             'quickjs.c:9584,17'
          Dst:             JS_ToUint8ClampFree
        - Src:             'quickjs.c:9594,17'
          Dst:             JS_ToInt32Free
        - Src:             'quickjs.c:9602,17'
          Dst:             JS_ToInt32Free
        - Src:             'quickjs.c:9610,17'
          Dst:             JS_ToInt32Free
        - Src:             'quickjs.c:9621,21'
          Dst:             JS_ToBigInt64Free
        - Src:             'quickjs.c:9629,17'
          Dst:             JS_ToFloat64Free
        - Src:             'quickjs.c:9633,42'
          Dst:             tofp16
        - Src:             'quickjs.c:9636,17'
          Dst:             JS_ToFloat64Free
        - Src:             'quickjs.c:9643,17'
          Dst:             JS_ToFloat64Free
        - Src:             'quickjs.c:9659,16'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:9660,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9662,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9665,15'
          Dst:             JS_SetPropertyInternal
        - Src:             'quickjs.c:9666,9'
          Dst:             JS_FreeAtom
    - functionName:    JS_ThrowTypeErrorNotAnObject
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7394
      functionLinenumberEnd: 7395
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_ThrowTypeError
      functionUses:    54
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7395,12'
          Dst:             JS_ThrowTypeError
    - functionName:    JS_DefinePropertyValueValue
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10290
      functionLinenumberEnd: 10302
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_DefinePropertyValue
        - JS_FreeAtom
        - JS_FreeValue
        - JS_ValueToAtom
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:10293,12'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:10294,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:10296,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:10299,11'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:10300,5'
          Dst:             JS_FreeAtom
    - functionName:    js_append_enumerate
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16442
      functionLinenumberEnd: 16522
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         44
      ICount:          233
      EdgeCount:       60
      CyclomaticComplexity: 18
      functionsReached:
        - JS_DefinePropertyValueUint32
        - JS_DupValue
        - JS_FreeValue
        - JS_GetIterator
        - JS_GetPropertyInternal
        - JS_IsCFunction
        - JS_IsException
        - JS_IteratorClose
        - JS_IteratorNext
        - JS_ThrowInternalError
        - js_array_iterator_next
        - js_create_array_iterator
        - js_get_fast_array
        - js_get_length32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:16450,9'
          Dst:             JS_ThrowInternalError
        - Src:             'quickjs.c:16462,16'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:16463,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:16466,25'
          Dst:             JS_IsCFunction
        - Src:             'quickjs.c:16466,25'
          Dst:             js_create_array_iterator
        - Src:             'quickjs.c:16468,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:16470,15'
          Dst:             JS_GetIterator
        - Src:             'quickjs.c:16471,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:16473,14'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:16474,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:16475,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:16481,9'
          Dst:             JS_IsCFunction
        - Src:             'quickjs.c:16481,9'
          Dst:             js_array_iterator_next
        - Src:             'quickjs.c:16482,9'
          Dst:             js_get_fast_array
        - Src:             'quickjs.c:16484,13'
          Dst:             js_get_length32
        - Src:             'quickjs.c:16493,46'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:16492,17'
          Dst:             JS_DefinePropertyValueUint32
        - Src:             'quickjs.c:16500,21'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:16501,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:16507,17'
          Dst:             JS_DefinePropertyValueUint32
        - Src:             'quickjs.c:16500,21'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:16501,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:16513,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:16514,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:16518,5'
          Dst:             JS_IteratorClose
        - Src:             'quickjs.c:16519,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:16520,5'
          Dst:             JS_FreeValue
    - functionName:    JS_CopyDataProperties
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16529
      functionLinenumberEnd: 16597
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          222
      EdgeCount:       66
      CyclomaticComplexity: 20
      functionsReached:
        - JS_DefinePropertyValue
        - JS_FreePropertyEnum
        - JS_GetOwnPropertyInternal
        - JS_GetOwnPropertyNamesInternal
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_SetProperty
        - js_free_desc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:16556,9'
          Dst:             JS_GetOwnPropertyNamesInternal
        - Src:             'quickjs.c:16562,19'
          Dst:             JS_GetOwnPropertyInternal
        - Src:             'quickjs.c:16571,19'
          Dst:             JS_GetOwnPropertyInternal
        - Src:             'quickjs.c:16577,13'
          Dst:             js_free_desc
        - Src:             'quickjs.c:16581,15'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:16582,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:16585,19'
          Dst:             JS_SetProperty
        - Src:             'quickjs.c:16587,19'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:0,0'
          Dst:             JS_FreePropertyEnum
    - functionName:    __JS_NewFloat64
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 256
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    132
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_IsString
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 649
      functionLinenumberEnd: 651
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    20
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_ConcatString
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4630
      functionLinenumberEnd: 4704
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          259
      EdgeCount:       64
      CyclomaticComplexity: 21
      functionsReached:
        - JS_ConcatString2
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_ToStringFree
        - js_new_string_rope
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4635,15'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:4636,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:4637,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:4643,15'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:4644,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:4645,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:4654,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:4661,28'
          Dst:             JS_ConcatString2
        - Src:             'quickjs.c:4663,28'
          Dst:             js_new_string_rope
        - Src:             'quickjs.c:4671,49'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:4671,27'
          Dst:             JS_ConcatString2
        - Src:             'quickjs.c:4672,25'
          Dst:             JS_IsException
        - Src:             'quickjs.c:4673,25'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:4676,51'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:4676,27'
          Dst:             js_new_string_rope
        - Src:             'quickjs.c:4677,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:4686,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:4693,46'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:4693,19'
          Dst:             JS_ConcatString2
        - Src:             'quickjs.c:4694,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:4695,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:4698,48'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:4698,19'
          Dst:             js_new_string_rope
        - Src:             'quickjs.c:4699,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:4703,12'
          Dst:             js_new_string_rope
    - functionName:    js_add_slow
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14700
      functionLinenumberEnd: 14813
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         73
      ICount:          389
      EdgeCount:       101
      CyclomaticComplexity: 30
      functionsReached:
        - JS_CompactBigInt
        - JS_ConcatString
        - JS_FreeValue
        - JS_IsException
        - JS_ToFloat64Free
        - JS_ToNumericFree
        - JS_ToPrimitiveFree
        - __JS_NewFloat64
        - __JS_NewShortBigInt
        - js_bigint_add
        - js_bigint_new_di
        - js_bigint_set_short
        - tag_is_string
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:14714,18'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:14725,22'
          Dst:             __JS_NewShortBigInt
        - Src:             'quickjs.c:14727,27'
          Dst:             js_bigint_new_di
        - Src:             'quickjs.c:14736,15'
          Dst:             JS_ToPrimitiveFree
        - Src:             'quickjs.c:14737,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:14738,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:14742,15'
          Dst:             JS_ToPrimitiveFree
        - Src:             'quickjs.c:14743,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:14744,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:14751,9'
          Dst:             tag_is_string
        - Src:             'quickjs.c:14751,32'
          Dst:             tag_is_string
        - Src:             'quickjs.c:14752,18'
          Dst:             JS_ConcatString
        - Src:             'quickjs.c:14753,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:14758,11'
          Dst:             JS_ToNumericFree
        - Src:             'quickjs.c:14759,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:14760,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:14763,11'
          Dst:             JS_ToNumericFree
        - Src:             'quickjs.c:14764,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:14765,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:14777,18'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:14784,18'
          Dst:             js_bigint_set_short
        - Src:             'quickjs.c:14788,18'
          Dst:             js_bigint_set_short
        - Src:             'quickjs.c:14791,13'
          Dst:             js_bigint_add
        - Src:             'quickjs.c:14792,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:14793,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:14796,18'
          Dst:             JS_CompactBigInt
        - Src:             'quickjs.c:14800,13'
          Dst:             JS_ToFloat64Free
        - Src:             'quickjs.c:14801,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:14804,13'
          Dst:             JS_ToFloat64Free
        - Src:             'quickjs.c:14806,18'
          Dst:             __JS_NewFloat64
    - functionName:    JS_ConcatStringInPlace
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4258
      functionLinenumberEnd: 4292
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          154
      EdgeCount:       35
      CyclomaticComplexity: 12
      functionsReached:
        - js_malloc_usable_size
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4267,17'
          Dst:             js_malloc_usable_size
    - functionName:    js_binary_arith_slow
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14509
      functionLinenumberEnd: 14692
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         133
      ICount:          660
      EdgeCount:       165
      CyclomaticComplexity: 34
      functionsReached:
        - JS_CompactBigInt
        - JS_FreeValue
        - JS_IsException
        - JS_ToFloat64Free
        - JS_ToNumericFree
        - __JS_NewFloat64
        - __JS_NewShortBigInt
        - abort
        - fmod
        - js_bigint_add
        - js_bigint_divrem
        - js_bigint_mul
        - js_bigint_new_di
        - js_bigint_pow
        - js_bigint_set_short
        - js_pow
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs.c:14530,9'
          Branch Sides:    []
        - Branch String:   'quickjs.c:14586,9'
          Branch Sides:    []
        - Branch String:   'quickjs.c:14629,9'
          Branch Sides:    []
        - Branch String:   'quickjs.c:14666,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:14543,22'
          Dst:             __JS_NewShortBigInt
        - Src:             'quickjs.c:14551,22'
          Dst:             __JS_NewShortBigInt
        - Src:             'quickjs.c:14556,13'
          Dst:             abort
        - Src:             'quickjs.c:14559,22'
          Dst:             __JS_NewShortBigInt
        - Src:             'quickjs.c:14561,27'
          Dst:             js_bigint_new_di
        - Src:             'quickjs.c:14568,11'
          Dst:             JS_ToNumericFree
        - Src:             'quickjs.c:14569,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:14570,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:14573,11'
          Dst:             JS_ToNumericFree
        - Src:             'quickjs.c:14574,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:14575,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:14593,26'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:14598,22'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:14602,45'
          Dst:             fmod
        - Src:             'quickjs.c:14602,26'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:14609,41'
          Dst:             js_pow
        - Src:             'quickjs.c:14609,22'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:14612,13'
          Dst:             abort
        - Src:             'quickjs.c:14614,18'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:14622,18'
          Dst:             js_bigint_set_short
        - Src:             'quickjs.c:14626,18'
          Dst:             js_bigint_set_short
        - Src:             'quickjs.c:14631,17'
          Dst:             js_bigint_add
        - Src:             'quickjs.c:14634,17'
          Dst:             js_bigint_add
        - Src:             'quickjs.c:14637,17'
          Dst:             js_bigint_mul
        - Src:             'quickjs.c:14640,17'
          Dst:             js_bigint_divrem
        - Src:             'quickjs.c:14643,17'
          Dst:             js_bigint_divrem
        - Src:             'quickjs.c:14646,17'
          Dst:             js_bigint_pow
        - Src:             'quickjs.c:14649,13'
          Dst:             abort
        - Src:             'quickjs.c:14651,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:14652,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:14655,18'
          Dst:             JS_CompactBigInt
        - Src:             'quickjs.c:14659,13'
          Dst:             JS_ToFloat64Free
        - Src:             'quickjs.c:14660,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:14663,13'
          Dst:             JS_ToFloat64Free
        - Src:             'quickjs.c:14677,18'
          Dst:             fmod
        - Src:             'quickjs.c:14680,18'
          Dst:             js_pow
        - Src:             'quickjs.c:14683,13'
          Dst:             abort
        - Src:             'quickjs.c:14685,18'
          Dst:             __JS_NewFloat64
    - functionName:    js_unary_arith_slow
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14324
      functionLinenumberEnd: 14459
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         57
      ICount:          281
      EdgeCount:       113
      CyclomaticComplexity: 58
      functionsReached:
        - JS_CompactBigInt
        - JS_FreeValue
        - JS_IsException
        - JS_ThrowTypeError
        - JS_ToNumericFree
        - __JS_NewFloat64
        - __JS_NewShortBigInt
        - abort
        - js_bigint_add
        - js_bigint_neg
        - js_bigint_not
        - js_bigint_set_short
        - js_bigint_set_si
      functionUses:    7
      BranchProfiles:
        - Branch String:   'quickjs.c:14339,5'
          Branch Sides:    []
        - Branch String:   'quickjs.c:14344,13'
          Branch Sides:    []
        - Branch String:   'quickjs.c:14370,13'
          Branch Sides:    []
        - Branch String:   'quickjs.c:14403,13'
          Branch Sides:    []
        - Branch String:   'quickjs.c:14437,13'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:14335,11'
          Dst:             JS_ToNumericFree
        - Src:             'quickjs.c:14336,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:14354,30'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:14361,17'
          Dst:             abort
        - Src:             'quickjs.c:14363,22'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:14372,17'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:14377,26'
          Dst:             __JS_NewShortBigInt
        - Src:             'quickjs.c:14382,26'
          Dst:             __JS_NewShortBigInt
        - Src:             'quickjs.c:14391,26'
          Dst:             __JS_NewShortBigInt
        - Src:             'quickjs.c:14394,17'
          Dst:             abort
        - Src:             'quickjs.c:14388,26'
          Dst:             js_bigint_set_short
        - Src:             'quickjs.c:14405,17'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:14406,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:14413,26'
          Dst:             js_bigint_set_si
        - Src:             'quickjs.c:14414,25'
          Dst:             js_bigint_add
        - Src:             'quickjs.c:14418,21'
          Dst:             js_bigint_neg
        - Src:             'quickjs.c:14421,21'
          Dst:             js_bigint_not
        - Src:             'quickjs.c:14424,17'
          Dst:             abort
        - Src:             'quickjs.c:14426,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:14429,22'
          Dst:             JS_CompactBigInt
        - Src:             'quickjs.c:14449,17'
          Dst:             abort
        - Src:             'quickjs.c:14451,22'
          Dst:             __JS_NewFloat64
    - functionName:    js_post_inc_slow
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14463
      functionLinenumberEnd: 14476
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_DupValue
        - JS_IsException
        - JS_ToNumericFree
        - js_unary_arith_slow
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:14468,11'
          Dst:             JS_ToNumericFree
        - Src:             'quickjs.c:14469,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:14474,13'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:14475,12'
          Dst:             js_unary_arith_slow
    - functionName:    js_not_slow
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14479
      functionLinenumberEnd: 14505
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          87
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - JS_CompactBigInt
        - JS_FreeValue
        - JS_IsException
        - JS_ToInt32Free
        - JS_ToNumericFree
        - __JS_NewShortBigInt
        - js_bigint_not
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:14483,11'
          Dst:             JS_ToNumericFree
        - Src:             'quickjs.c:14484,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:14487,18'
          Dst:             __JS_NewShortBigInt
        - Src:             'quickjs.c:14490,13'
          Dst:             js_bigint_not
        - Src:             'quickjs.c:14491,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:14494,18'
          Dst:             JS_CompactBigInt
        - Src:             'quickjs.c:14497,13'
          Dst:             JS_ToInt32Free
    - functionName:    js_binary_logic_slow
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14818
      functionLinenumberEnd: 14974
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         92
      ICount:          442
      EdgeCount:       112
      CyclomaticComplexity: 22
      functionsReached:
        - JS_CompactBigInt
        - JS_FreeValue
        - JS_IsException
        - JS_ToInt32Free
        - JS_ToNumericFree
        - __JS_NewShortBigInt
        - abort
        - js_bigint_get_si_sat
        - js_bigint_logic
        - js_bigint_new_di
        - js_bigint_set_short
        - js_bigint_shl
        - js_bigint_shr
      functionUses:    5
      BranchProfiles:
        - Branch String:   'quickjs.c:14834,9'
          Branch Sides:    []
        - Branch String:   'quickjs.c:14910,9'
          Branch Sides:    []
        - Branch String:   'quickjs.c:14948,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:14871,31'
          Dst:             js_bigint_new_di
        - Src:             'quickjs.c:14879,13'
          Dst:             abort
        - Src:             'quickjs.c:14881,18'
          Dst:             __JS_NewShortBigInt
        - Src:             'quickjs.c:14884,11'
          Dst:             JS_ToNumericFree
        - Src:             'quickjs.c:14885,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:14886,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:14889,11'
          Dst:             JS_ToNumericFree
        - Src:             'quickjs.c:14890,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:14891,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:14903,18'
          Dst:             js_bigint_set_short
        - Src:             'quickjs.c:14907,18'
          Dst:             js_bigint_set_short
        - Src:             'quickjs.c:14914,17'
          Dst:             js_bigint_logic
        - Src:             'quickjs.c:14920,25'
          Dst:             js_bigint_get_si_sat
        - Src:             'quickjs.c:14928,25'
          Dst:             js_bigint_shl
        - Src:             'quickjs.c:14930,25'
          Dst:             js_bigint_shr
        - Src:             'quickjs.c:14934,13'
          Dst:             abort
        - Src:             'quickjs.c:14936,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:14937,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:14940,18'
          Dst:             JS_CompactBigInt
        - Src:             'quickjs.c:14942,13'
          Dst:             JS_ToInt32Free
        - Src:             'quickjs.c:14943,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:14946,13'
          Dst:             JS_ToInt32Free
        - Src:             'quickjs.c:14965,13'
          Dst:             abort
    - functionName:    js_shr_slow
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15331
      functionLinenumberEnd: 15366
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          119
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_ThrowTypeError
        - JS_ToNumericFree
        - JS_ToUint32Free
        - __JS_NewFloat64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:15337,11'
          Dst:             JS_ToNumericFree
        - Src:             'quickjs.c:15338,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:15339,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15342,11'
          Dst:             JS_ToNumericFree
        - Src:             'quickjs.c:15343,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:15344,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15351,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:15352,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15353,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15357,5'
          Dst:             JS_ToUint32Free
        - Src:             'quickjs.c:15358,5'
          Dst:             JS_ToUint32Free
        - Src:             'quickjs.c:15360,14'
          Dst:             __JS_NewFloat64
    - functionName:    js_relational_slow
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15071
      functionLinenumberEnd: 15201
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         92
      ICount:          442
      EdgeCount:       120
      CyclomaticComplexity: 30
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_StringToBigInt
        - JS_ToNumericFree
        - JS_ToPrimitiveFree
        - js_compare_bigint
        - js_string_compare
        - js_string_rope_compare
        - tag_is_string
      functionUses:    4
      BranchProfiles:
        - Branch String:   'quickjs.c:15100,9'
          Branch Sides:    []
        - Branch String:   'quickjs.c:15177,13'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:15080,11'
          Dst:             JS_ToPrimitiveFree
        - Src:             'quickjs.c:15081,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:15082,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15085,11'
          Dst:             JS_ToPrimitiveFree
        - Src:             'quickjs.c:15086,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:15087,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15093,9'
          Dst:             tag_is_string
        - Src:             'quickjs.c:15093,32'
          Dst:             tag_is_string
        - Src:             'quickjs.c:15095,19'
          Dst:             js_string_compare
        - Src:             'quickjs.c:15098,19'
          Dst:             js_string_rope_compare
        - Src:             'quickjs.c:15115,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15116,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15123,15'
          Dst:             tag_is_string
        - Src:             'quickjs.c:15127,23'
          Dst:             JS_StringToBigInt
        - Src:             'quickjs.c:15132,17'
          Dst:             tag_is_string
        - Src:             'quickjs.c:15133,23'
          Dst:             JS_StringToBigInt
        - Src:             'quickjs.c:15137,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15138,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15144,19'
          Dst:             JS_ToNumericFree
        - Src:             'quickjs.c:15145,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:15146,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15149,19'
          Dst:             JS_ToNumericFree
        - Src:             'quickjs.c:15150,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:15151,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15161,19'
          Dst:             js_compare_bigint
    - functionName:    js_eq_slow
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15212
      functionLinenumberEnd: 15328
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         142
      ICount:          619
      EdgeCount:       198
      CyclomaticComplexity: 58
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_IsHTMLDDA
        - JS_StringToBigInt
        - JS_ToNumericFree
        - JS_ToPrimitiveFree
        - js_compare_bigint
        - js_strict_eq2
        - tag_is_number
        - tag_is_string
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:15222,9'
          Dst:             tag_is_number
        - Src:             'quickjs.c:15222,32'
          Dst:             tag_is_number
        - Src:             'quickjs.c:15249,16'
          Dst:             tag_is_string
        - Src:             'quickjs.c:15249,39'
          Dst:             tag_is_string
        - Src:             'quickjs.c:15252,40'
          Dst:             tag_is_number
        - Src:             'quickjs.c:15253,17'
          Dst:             tag_is_string
        - Src:             'quickjs.c:15222,9'
          Dst:             tag_is_number
        - Src:             'quickjs.c:15222,32'
          Dst:             tag_is_number
        - Src:             'quickjs.c:15242,19'
          Dst:             js_compare_bigint
        - Src:             'quickjs.c:15245,15'
          Dst:             js_strict_eq2
        - Src:             'quickjs.c:15249,16'
          Dst:             tag_is_string
        - Src:             'quickjs.c:15251,15'
          Dst:             js_strict_eq2
        - Src:             'quickjs.c:15252,40'
          Dst:             tag_is_number
        - Src:             'quickjs.c:15258,23'
          Dst:             JS_StringToBigInt
        - Src:             'quickjs.c:15263,17'
          Dst:             tag_is_string
        - Src:             'quickjs.c:15264,23'
          Dst:             JS_StringToBigInt
        - Src:             'quickjs.c:15268,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15269,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15275,19'
          Dst:             JS_ToNumericFree
        - Src:             'quickjs.c:15276,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:15277,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15280,19'
          Dst:             JS_ToNumericFree
        - Src:             'quickjs.c:15281,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:15282,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15286,15'
          Dst:             js_strict_eq2
        - Src:             'quickjs.c:15294,18'
          Dst:             tag_is_number
        - Src:             'quickjs.c:15297,15'
          Dst:             JS_ToPrimitiveFree
        - Src:             'quickjs.c:15298,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:15299,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15302,15'
          Dst:             JS_ToPrimitiveFree
        - Src:             'quickjs.c:15303,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:15304,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15310,14'
          Dst:             JS_IsHTMLDDA
        - Src:             'quickjs.c:15312,14'
          Dst:             JS_IsHTMLDDA
        - Src:             'quickjs.c:15318,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15319,9'
          Dst:             JS_FreeValue
    - functionName:    js_strict_eq_slow
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15532
      functionLinenumberEnd: 15536
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_strict_eq2
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:15534,11'
          Dst:             js_strict_eq2
    - functionName:    js_operator_in
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15540
      functionLinenumberEnd: 15563
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeAtom
        - JS_FreeValue
        - JS_HasProperty
        - JS_ThrowTypeError
        - JS_ValueToAtom
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:15549,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:15552,12'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:15555,11'
          Dst:             JS_HasProperty
        - Src:             'quickjs.c:15556,5'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:15559,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15560,5'
          Dst:             JS_FreeValue
    - functionName:    js_operator_private_in
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15566
      functionLinenumberEnd: 15600
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          111
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - JS_CheckBrand
        - JS_FreeAtom
        - JS_FreeValue
        - JS_IsObject
        - JS_ThrowTypeError
        - JS_ValueToAtom
        - get_shape_prop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:15574,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:15577,9'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:15579,15'
          Dst:             JS_CheckBrand
        - Src:             'quickjs.c:15588,16'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:15592,15'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:15593,9'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:15596,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15597,5'
          Dst:             JS_FreeValue
    - functionName:    js_operator_instanceof
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15621
      functionLinenumberEnd: 15634
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeValue
        - JS_IsInstanceOf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:15627,11'
          Dst:             JS_IsInstanceOf
        - Src:             'quickjs.c:15630,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15631,5'
          Dst:             JS_FreeValue
    - functionName:    js_operator_typeof
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15637
      functionLinenumberEnd: 15685
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          85
      EdgeCount:       24
      CyclomaticComplexity: 3
      functionsReached:
        - JS_IsFunction
      functionUses:    3
      BranchProfiles:
        - Branch String:   'quickjs.c:15642,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:15667,22'
          Dst:             JS_IsFunction
    - functionName:    js_operator_delete
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15688
      functionLinenumberEnd: 15706
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          48
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_DeleteProperty
        - JS_FreeAtom
        - JS_FreeValue
        - JS_ValueToAtom
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:15695,12'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:15698,11'
          Dst:             JS_DeleteProperty
        - Src:             'quickjs.c:15699,5'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:15702,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15703,5'
          Dst:             JS_FreeValue
    - functionName:    JS_DeleteGlobalVar
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10495
      functionLinenumberEnd: 10514
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          83
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - JS_DeleteProperty
        - JS_HasProperty
        - get_shape_prop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:10503,11'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:10506,11'
          Dst:             JS_HasProperty
        - Src:             'quickjs.c:10510,16'
          Dst:             JS_DeleteProperty
    - functionName:    js_has_unscopable
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15604
      functionLinenumberEnd: 15618
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          42
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsObject
        - JS_ToBoolFree
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:15608,11'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:15609,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:15612,9'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:15613,15'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:15614,15'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:15616,5'
          Dst:             JS_FreeValue
    - functionName:    JS_DeleteProperty
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10520
      functionLinenumberEnd: 10539
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          63
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_ThrowTypeError
        - JS_ToObject
        - delete_property
        - is_strict_mode
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:10525,12'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:10526,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:10529,11'
          Dst:             delete_property
        - Src:             'quickjs.c:10530,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:10534,44'
          Dst:             is_strict_mode
        - Src:             'quickjs.c:10535,9'
          Dst:             JS_ThrowTypeError
    - functionName:    is_backtrace_needed
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7220
      functionLinenumberEnd: 7230
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          80
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - get_shape_prop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7227,9'
          Dst:             get_shape_prop
    - functionName:    close_var_refs
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17161
      functionLinenumberEnd: 17170
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          52
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - close_var_ref
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:17168,13'
          Dst:             close_var_ref
    - functionName:    close_var_ref
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17149
      functionLinenumberEnd: 17158
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_DupValueRT
        - async_func_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:17152,9'
          Dst:             async_func_free
        - Src:             'quickjs.c:17154,22'
          Dst:             JS_DupValueRT
    - functionName:    JS_DupValueRT
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 708
      functionLinenumberEnd: 713
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          22
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    delete_property
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8911
      functionLinenumberEnd: 9004
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         65
      ICount:          357
      EdgeCount:       90
      CyclomaticComplexity: 27
      functionsReached:
        - JS_AtomIsArrayIndex
        - JS_FreeAtom
        - JS_FreeValue
        - compact_properties
        - convert_fast_array_to_array
        - free_property
        - free_var_ref
        - get_shape_prop
        - js_shape_prepare_update
        - remove_global_object_property
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:8922,12'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:8934,17'
          Dst:             js_shape_prepare_update
        - Src:             'quickjs.c:8934,17'
          Dst:             js_shape_prepare_update
        - Src:             'quickjs.c:8939,23'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:8949,25'
          Dst:             remove_global_object_property
        - Src:             'quickjs.c:8952,13'
          Dst:             free_property
        - Src:             'quickjs.c:8953,13'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:8962,17'
          Dst:             compact_properties
        - Src:             'quickjs.c:8973,17'
          Dst:             JS_AtomIsArrayIndex
        - Src:             'quickjs.c:8981,29'
          Dst:             free_var_ref
        - Src:             'quickjs.c:8983,29'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:8988,25'
          Dst:             convert_fast_array_to_array
    - functionName:    js_shape_prepare_update
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9903
      functionLinenumberEnd: 9926
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          77
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - get_shape_prop
        - js_clone_shape
        - js_free_shape
        - js_shape_hash_unlink
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:9911,31'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:9913,18'
          Dst:             js_clone_shape
        - Src:             'quickjs.c:9916,13'
          Dst:             js_free_shape
        - Src:             'quickjs.c:9919,25'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:9921,13'
          Dst:             js_shape_hash_unlink
    - functionName:    remove_global_object_property
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8889
      functionLinenumberEnd: 8908
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          53
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeValue
        - add_property
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:8898,11'
          Dst:             add_property
        - Src:             'quickjs.c:8903,5'
          Dst:             JS_FreeValue
    - functionName:    compact_properties
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5004
      functionLinenumberEnd: 5068
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          184
      EdgeCount:       32
      CyclomaticComplexity: 8
      functionsReached:
        - __assert_fail
        - get_alloc_from_shape
        - get_shape_from_alloc
        - get_shape_size
        - js_free
        - js_malloc
        - js_realloc
        - list_add_tail
        - list_del
        - max_int
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5013,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:5015,16'
          Dst:             max_int
        - Src:             'quickjs.c:5017,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:5026,31'
          Dst:             get_shape_size
        - Src:             'quickjs.c:5026,16'
          Dst:             js_malloc
        - Src:             'quickjs.c:5029,10'
          Dst:             get_shape_from_alloc
        - Src:             'quickjs.c:5030,5'
          Dst:             list_del
        - Src:             'quickjs.c:5032,5'
          Dst:             list_add_tail
        - Src:             'quickjs.c:5054,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:5061,18'
          Dst:             get_alloc_from_shape
        - Src:             'quickjs.c:5061,5'
          Dst:             js_free
        - Src:             'quickjs.c:5064,16'
          Dst:             js_realloc
    - functionName:    JS_AtomIsArrayIndex
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3222
      functionLinenumberEnd: 3242
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          77
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - __JS_AtomIsTaggedInt
        - __JS_AtomToUInt32
        - __assert_fail
        - is_num_string
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3223,9'
          Dst:             __JS_AtomIsTaggedInt
        - Src:             'quickjs.c:3224,17'
          Dst:             __JS_AtomToUInt32
        - Src:             'quickjs.c:3231,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:3234,13'
          Dst:             is_num_string
    - functionName:    convert_fast_array_to_array
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8845
      functionLinenumberEnd: 8885
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          120
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - __JS_AtomFromUInt32
        - add_property
        - js_free
        - js_shape_prepare_update
        - resize_properties
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:8850,9'
          Dst:             js_shape_prepare_update
        - Src:             'quickjs.c:8857,13'
          Dst:             resize_properties
        - Src:             'quickjs.c:8866,39'
          Dst:             __JS_AtomFromUInt32
        - Src:             'quickjs.c:8866,18'
          Dst:             add_property
        - Src:             'quickjs.c:8874,39'
          Dst:             __JS_AtomFromUInt32
        - Src:             'quickjs.c:8874,18'
          Dst:             add_property
        - Src:             'quickjs.c:8878,5'
          Dst:             js_free
    - functionName:    resize_properties
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4943
      functionLinenumberEnd: 5000
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          157
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - get_alloc_from_shape
        - get_shape_from_alloc
        - get_shape_size
        - js_free
        - js_malloc
        - js_realloc
        - list_add_tail
        - list_del
        - max_int
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4952,16'
          Dst:             max_int
        - Src:             'quickjs.c:4957,20'
          Dst:             js_realloc
        - Src:             'quickjs.c:4968,31'
          Dst:             get_shape_size
        - Src:             'quickjs.c:4968,16'
          Dst:             js_malloc
        - Src:             'quickjs.c:4971,10'
          Dst:             get_shape_from_alloc
        - Src:             'quickjs.c:4972,5'
          Dst:             list_del
        - Src:             'quickjs.c:4976,5'
          Dst:             list_add_tail
        - Src:             'quickjs.c:4996,18'
          Dst:             get_alloc_from_shape
        - Src:             'quickjs.c:4996,5'
          Dst:             js_free
    - functionName:    __JS_AtomFromUInt32
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2479
      functionLinenumberEnd: 2480
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_shape_size
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4709
      functionLinenumberEnd: 4711
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_shape_from_alloc
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4715
      functionLinenumberEnd: 4716
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __JS_AtomIsTaggedInt
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2474
      functionLinenumberEnd: 2475
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    26
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __JS_AtomToUInt32
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2484
      functionLinenumberEnd: 2485
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    19
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_num_string
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2495
      functionLinenumberEnd: 2526
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          100
      EdgeCount:       33
      CyclomaticComplexity: 11
      functionsReached:
        - is_num
        - string_get
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:2503,9'
          Dst:             string_get
        - Src:             'quickjs.c:2504,9'
          Dst:             is_num
        - Src:             'quickjs.c:2512,21'
          Dst:             string_get
        - Src:             'quickjs.c:2513,22'
          Dst:             is_num
    - functionName:    string_get
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1545
      functionLinenumberEnd: 1546
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    43
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_num
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2489
      functionLinenumberEnd: 2490
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          19
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_clone_shape
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4874
      functionLinenumberEnd: 4899
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          79
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - JS_DupAtom
        - JS_DupValue
        - add_gc_object
        - get_alloc_from_shape
        - get_shape_from_alloc
        - get_shape_prop
        - get_shape_size
        - js_malloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4882,12'
          Dst:             get_shape_size
        - Src:             'quickjs.c:4883,16'
          Dst:             js_malloc
        - Src:             'quickjs.c:4886,17'
          Dst:             get_alloc_from_shape
        - Src:             'quickjs.c:4888,10'
          Dst:             get_shape_from_alloc
        - Src:             'quickjs.c:4890,5'
          Dst:             add_gc_object
        - Src:             'quickjs.c:4893,9'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:4895,21'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:4896,9'
          Dst:             JS_DupAtom
    - functionName:    add_gc_object
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6141
      functionLinenumberEnd: 6145
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - list_add_tail
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:6144,5'
          Dst:             list_add_tail
    - functionName:    JS_DupAtom
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2706
      functionLinenumberEnd: 2715
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __JS_AtomIsConst
      functionUses:    75
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:2710,10'
          Dst:             __JS_AtomIsConst
    - functionName:    JS_IsInstanceOf
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7733
      functionLinenumberEnd: 7754
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          74
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - JS_CallFree
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsFunction
        - JS_IsNull
        - JS_IsObject
        - JS_IsUndefined
        - JS_OrdinaryIsInstanceOf
        - JS_ThrowTypeError
        - JS_ToBoolFree
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7736,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:7738,14'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:7739,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:7741,10'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:7741,32'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:7743,15'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:7744,16'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:7748,10'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:7750,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:7753,12'
          Dst:             JS_OrdinaryIsInstanceOf
    - functionName:    JS_OrdinaryIsInstanceOf
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7660
      functionLinenumberEnd: 7729
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          151
      EdgeCount:       46
      CyclomaticComplexity: 15
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_GetPrototypeFree
        - JS_IsException
        - JS_IsFunction
        - JS_IsInstanceOf
        - JS_IsNull
        - JS_ThrowTypeError
        - js_poll_interrupts
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7666,10'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:7671,16'
          Dst:             JS_IsInstanceOf
        - Src:             'quickjs.c:7677,17'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:7679,14'
          Dst:             JS_IsException
        - Src:             'quickjs.c:7680,13'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:7692,24'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:7694,28'
          Dst:             JS_GetPrototypeFree
        - Src:             'quickjs.c:7695,25'
          Dst:             JS_IsException
        - Src:             'quickjs.c:7699,25'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:7704,25'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:7709,25'
          Dst:             js_poll_interrupts
        - Src:             'quickjs.c:7710,25'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:7727,5'
          Dst:             JS_FreeValue
    - functionName:    JS_GetPrototypeFree
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7650
      functionLinenumberEnd: 7654
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_FreeValue
        - JS_GetPrototype
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7652,12'
          Dst:             JS_GetPrototype
        - Src:             'quickjs.c:7653,5'
          Dst:             JS_FreeValue
    - functionName:    tag_is_number
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15204
      functionLinenumberEnd: 15207
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          33
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_compare_bigint
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15002
      functionLinenumberEnd: 15067
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          177
      EdgeCount:       46
      CyclomaticComplexity: 10
      functionsReached:
        - JS_FreeValue
        - JS_ToBigIntBuf
        - abort
        - js_bigint_cmp
        - js_bigint_float64_cmp
      functionUses:    2
      BranchProfiles:
        - Branch String:   'quickjs.c:15047,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:15024,18'
          Dst:             JS_ToBigIntBuf
        - Src:             'quickjs.c:15025,19'
          Dst:             js_bigint_float64_cmp
        - Src:             'quickjs.c:15030,18'
          Dst:             JS_ToBigIntBuf
        - Src:             'quickjs.c:15031,19'
          Dst:             js_bigint_float64_cmp
        - Src:             'quickjs.c:15034,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15035,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15039,18'
          Dst:             JS_ToBigIntBuf
        - Src:             'quickjs.c:15040,18'
          Dst:             JS_ToBigIntBuf
        - Src:             'quickjs.c:15041,19'
          Dst:             js_bigint_cmp
        - Src:             'quickjs.c:15043,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15044,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15064,9'
          Dst:             abort
    - functionName:    JS_StringToBigInt
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14211
      functionLinenumberEnd: 14237
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          78
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_FreeCString
        - JS_FreeValue
        - JS_IsException
        - JS_NewBigInt64
        - JS_ToCStringLen
        - js_atof
        - skip_spaces
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:14216,11'
          Dst:             JS_ToCStringLen
        - Src:             'quickjs.c:14217,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:14221,10'
          Dst:             skip_spaces
        - Src:             'quickjs.c:14223,15'
          Dst:             JS_NewBigInt64
        - Src:             'quickjs.c:14226,15'
          Dst:             js_atof
        - Src:             'quickjs.c:14227,14'
          Dst:             skip_spaces
        - Src:             'quickjs.c:14228,14'
          Dst:             JS_IsException
        - Src:             'quickjs.c:14230,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:14235,5'
          Dst:             JS_FreeCString
    - functionName:    JS_ToNumericFree
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12627
      functionLinenumberEnd: 12628
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_ToNumberHintFree
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:12628,12'
          Dst:             JS_ToNumberHintFree
    - functionName:    JS_IsHTMLDDA
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10751
      functionLinenumberEnd: 10757
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          22
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_ToNumberHintFree
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12549
      functionLinenumberEnd: 12619
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          166
      EdgeCount:       40
      CyclomaticComplexity: 7
      functionsReached:
        - JS_FreeCString
        - JS_FreeValue
        - JS_IsException
        - JS_ThrowTypeError
        - JS_ToCStringLen
        - JS_ToPrimitiveFree
        - js_atof
        - skip_spaces
      functionUses:    2
      BranchProfiles:
        - Branch String:   'quickjs.c:12555,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:12559,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:12560,20'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:12577,15'
          Dst:             JS_ToPrimitiveFree
        - Src:             'quickjs.c:12578,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:12588,19'
          Dst:             JS_ToCStringLen
        - Src:             'quickjs.c:12589,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:12593,18'
          Dst:             skip_spaces
        - Src:             'quickjs.c:12598,23'
          Dst:             js_atof
        - Src:             'quickjs.c:12599,22'
          Dst:             JS_IsException
        - Src:             'quickjs.c:12600,26'
          Dst:             skip_spaces
        - Src:             'quickjs.c:12602,25'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:12611,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:12612,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:12614,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:12607,13'
          Dst:             JS_FreeCString
    - functionName:    skip_spaces
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10830
      functionLinenumberEnd: 10849
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          62
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - lre_is_space
        - unicode_from_utf8
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:10842,17'
          Dst:             unicode_from_utf8
        - Src:             'quickjs.c:10843,18'
          Dst:             lre_is_space
    - functionName:    js_atof
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12366
      functionLinenumberEnd: 12540
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         218
      ICount:          962
      EdgeCount:       299
      CyclomaticComplexity: 83
      functionsReached:
        - JS_CompactBigInt
        - JS_ThrowOutOfMemory
        - __JS_NewFloat64
        - abort
        - is_digit
        - js_atod
        - js_bigint_from_string
        - js_free_rt
        - js_malloc_rt
        - strstart
        - to_digit
      functionUses:    5
      BranchProfiles:
        - Branch String:   'quickjs.c:12501,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:12424,13'
          Dst:             to_digit
        - Src:             'quickjs.c:12431,13'
          Dst:             strstart
        - Src:             'quickjs.c:12435,19'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:12443,12'
          Dst:             to_digit
        - Src:             'quickjs.c:12446,17'
          Dst:             to_digit
        - Src:             'quickjs.c:12443,12'
          Dst:             to_digit
        - Src:             'quickjs.c:12446,17'
          Dst:             to_digit
        - Src:             'quickjs.c:12443,12'
          Dst:             to_digit
        - Src:             'quickjs.c:12446,17'
          Dst:             to_digit
        - Src:             'quickjs.c:12450,42'
          Dst:             to_digit
        - Src:             'quickjs.c:12455,20'
          Dst:             to_digit
        - Src:             'quickjs.c:12456,34'
          Dst:             to_digit
        - Src:             'quickjs.c:12467,17'
          Dst:             is_digit
        - Src:             'quickjs.c:12469,24'
          Dst:             is_digit
        - Src:             'quickjs.c:12469,63'
          Dst:             is_digit
        - Src:             'quickjs.c:12481,15'
          Dst:             js_malloc_rt
        - Src:             'quickjs.c:12505,17'
          Dst:             js_atod
        - Src:             'quickjs.c:12508,19'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:12516,17'
          Dst:             js_bigint_from_string
        - Src:             'quickjs.c:12521,19'
          Dst:             JS_CompactBigInt
        - Src:             'quickjs.c:12525,9'
          Dst:             abort
        - Src:             'quickjs.c:12530,9'
          Dst:             js_free_rt
        - Src:             'quickjs.c:12538,11'
          Dst:             JS_ThrowOutOfMemory
    - functionName:    to_digit
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10852
      functionLinenumberEnd: 10861
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          54
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_digit
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1541
      functionLinenumberEnd: 1542
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          19
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_bigint_from_string
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12055
      functionLinenumberEnd: 12147
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         53
      ICount:          267
      EdgeCount:       70
      CyclomaticComplexity: 19
      functionsReached:
        - JS_ThrowRangeError
        - __assert_fail
        - clz32
        - js_bigint_neg
        - js_bigint_new
        - js_bigint_normalize
        - js_free
        - max_int
        - mp_mul1
        - strlen
        - to_digit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:12069,17'
          Dst:             strlen
        - Src:             'quickjs.c:12073,9'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:12077,23'
          Dst:             clz32
        - Src:             'quickjs.c:12085,15'
          Dst:             max_int
        - Src:             'quickjs.c:12086,9'
          Dst:             js_bigint_new
        - Src:             'quickjs.c:12097,21'
          Dst:             to_digit
        - Src:             'quickjs.c:12108,21'
          Dst:             mp_mul1
        - Src:             'quickjs.c:12125,17'
          Dst:             to_digit
        - Src:             'quickjs.c:12126,13'
          Dst:             __assert_fail
        - Src:             'quickjs.c:12138,9'
          Dst:             js_bigint_normalize
        - Src:             'quickjs.c:12142,14'
          Dst:             js_bigint_neg
        - Src:             'quickjs.c:12143,9'
          Dst:             js_free
    - functionName:    JS_CompactBigInt
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12334
      functionLinenumberEnd: 12343
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __JS_NewShortBigInt
        - js_free
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:12337,15'
          Dst:             __JS_NewShortBigInt
        - Src:             'quickjs.c:12338,9'
          Dst:             js_free
    - functionName:    mp_mul1
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10958
      functionLinenumberEnd: 10967
      functionDepth:   0
      returnType:      size_t
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          84
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lre_is_space
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 162
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          26
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - lre_is_space_byte
        - lre_is_space_non_ascii
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             './libunicode.h:164,16'
          Dst:             lre_is_space_byte
        - Src:             './libunicode.h:166,16'
          Dst:             lre_is_space_non_ascii
    - functionName:    lre_is_space_byte
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_NewBigInt64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14180
      functionLinenumberEnd: 14182
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __JS_NewShortBigInt
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:14182,12'
          Dst:             __JS_NewShortBigInt
    - functionName:    JS_ToBigIntBuf
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14979
      functionLinenumberEnd: 14995
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          38
      EdgeCount:       14
      CyclomaticComplexity: 8
      functionsReached:
        - abort
        - js_bigint_set_short
        - js_bigint_set_si
      functionUses:    4
      BranchProfiles:
        - Branch String:   'quickjs.c:14982,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:14984,14'
          Dst:             js_bigint_set_si
        - Src:             'quickjs.c:14987,14'
          Dst:             js_bigint_set_short
        - Src:             'quickjs.c:14993,9'
          Dst:             abort
    - functionName:    js_bigint_float64_cmp
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11942
      functionLinenumberEnd: 11991
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          152
      EdgeCount:       46
      CyclomaticComplexity: 15
      functionsReached:
        - float64_as_uint64
        - js_bigint_get_mant_exp
        - js_bigint_sign
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:11946,10'
          Dst:             float64_as_uint64
        - Src:             'quickjs.c:11950,14'
          Dst:             js_bigint_sign
        - Src:             'quickjs.c:11975,18'
          Dst:             js_bigint_get_mant_exp
    - functionName:    float64_as_uint64
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 382
      functionLinenumberEnd: 388
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_bigint_get_mant_exp
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11793
      functionLinenumberEnd: 11847
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          182
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - clz64
        - js_bigint_sign
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:11800,11'
          Dst:             js_bigint_sign
        - Src:             'quickjs.c:11837,17'
          Dst:             clz64
    - functionName:    js_string_compare
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4205
      functionLinenumberEnd: 4217
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          47
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - js_string_memcmp
        - min_int
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4207,11'
          Dst:             min_int
        - Src:             'quickjs.c:4208,11'
          Dst:             js_string_memcmp
    - functionName:    JS_ToUint32Free
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12978
      functionLinenumberEnd: 12979
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_ToInt32Free
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:12979,12'
          Dst:             JS_ToInt32Free
    - functionName:    JS_ToInt32Free
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12921
      functionLinenumberEnd: 12970
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          91
      EdgeCount:       23
      CyclomaticComplexity: 5
      functionsReached:
        - JS_IsException
        - JS_ToNumberFree
      functionUses:    9
      BranchProfiles:
        - Branch String:   'quickjs.c:12927,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:12961,15'
          Dst:             JS_ToNumberFree
        - Src:             'quickjs.c:12962,13'
          Dst:             JS_IsException
    - functionName:    JS_ToNumberFree
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12622
      functionLinenumberEnd: 12623
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_ToNumberHintFree
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:12623,12'
          Dst:             JS_ToNumberHintFree
    - functionName:    js_bigint_new_di
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11311
      functionLinenumberEnd: 11326
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          46
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - js_bigint_new
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:11314,13'
          Dst:             js_bigint_new
        - Src:             'quickjs.c:11319,13'
          Dst:             js_bigint_new
    - functionName:    js_bigint_logic
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11585
      functionLinenumberEnd: 11633
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         155
      ICount:          917
      EdgeCount:       209
      CyclomaticComplexity: 56
      functionsReached:
        - abort
        - js_bigint_new
        - js_bigint_normalize
        - js_bigint_sign
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs.c:11604,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:11599,15'
          Dst:             js_bigint_sign
        - Src:             'quickjs.c:11601,9'
          Dst:             js_bigint_new
        - Src:             'quickjs.c:11630,9'
          Dst:             abort
        - Src:             'quickjs.c:11632,12'
          Dst:             js_bigint_normalize
    - functionName:    js_bigint_get_si_sat
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11367
      functionLinenumberEnd: 11383
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          35
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - js_bigint_sign
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:11377,13'
          Dst:             js_bigint_sign
    - functionName:    js_bigint_shl
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11652
      functionLinenumberEnd: 11677
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          218
      EdgeCount:       56
      CyclomaticComplexity: 17
      functionsReached:
        - js_bigint_extend
        - js_bigint_new
        - js_bigint_new_si
        - js_bigint_sign
        - mp_shl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:11658,16'
          Dst:             js_bigint_new_si
        - Src:             'quickjs.c:11661,9'
          Dst:             js_bigint_new
        - Src:             'quickjs.c:11671,13'
          Dst:             mp_shl
        - Src:             'quickjs.c:11672,13'
          Dst:             js_bigint_sign
        - Src:             'quickjs.c:11674,13'
          Dst:             js_bigint_extend
    - functionName:    js_bigint_shr
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11681
      functionLinenumberEnd: 11704
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          209
      EdgeCount:       48
      CyclomaticComplexity: 15
      functionsReached:
        - js_bigint_new
        - js_bigint_new_si
        - js_bigint_normalize
        - js_bigint_sign
        - mp_shr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:11687,14'
          Dst:             js_bigint_sign
        - Src:             'quickjs.c:11689,16'
          Dst:             js_bigint_new_si
        - Src:             'quickjs.c:11691,9'
          Dst:             js_bigint_new
        - Src:             'quickjs.c:11700,9'
          Dst:             mp_shr
        - Src:             'quickjs.c:11701,13'
          Dst:             js_bigint_normalize
    - functionName:    js_bigint_new_si
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11261
      functionLinenumberEnd: 11268
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          24
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - js_bigint_new
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:11263,9'
          Dst:             js_bigint_new
    - functionName:    mp_shr
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11177
      functionLinenumberEnd: 11187
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          146
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mp_shl
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11161
      functionLinenumberEnd: 11170
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          77
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_bigint_not
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11636
      functionLinenumberEnd: 11648
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          166
      EdgeCount:       42
      CyclomaticComplexity: 13
      functionsReached:
        - js_bigint_new
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:11640,9'
          Dst:             js_bigint_new
    - functionName:    fmod
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        2
      argTypes:
        - double
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_pow
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14170
      functionLinenumberEnd: 14177
      functionDepth:   0
      returnType:      double
      argCount:        2
      argTypes:
        - double
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          32
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - pow
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:14175,16'
          Dst:             pow
    - functionName:    js_bigint_mul
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11463
      functionLinenumberEnd: 11477
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          68
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - js_bigint_new
        - js_bigint_normalize
        - js_bigint_sign
        - mp_mul_basecase
        - mp_sub
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:11466,9'
          Dst:             js_bigint_new
        - Src:             'quickjs.c:11469,5'
          Dst:             mp_mul_basecase
        - Src:             'quickjs.c:11472,9'
          Dst:             js_bigint_sign
        - Src:             'quickjs.c:11473,9'
          Dst:             mp_sub
        - Src:             'quickjs.c:11474,9'
          Dst:             js_bigint_sign
        - Src:             'quickjs.c:11475,9'
          Dst:             mp_sub
        - Src:             'quickjs.c:11476,12'
          Dst:             js_bigint_normalize
    - functionName:    js_bigint_divrem
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11483
      functionLinenumberEnd: 11580
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         59
      ICount:          284
      EdgeCount:       81
      CyclomaticComplexity: 24
      functionsReached:
        - JS_ThrowRangeError
        - js_bigint_new
        - js_bigint_new_si
        - js_bigint_normalize
        - js_bigint_normalize1
        - js_bigint_sign
        - js_free
        - js_limb_clz
        - js_malloc
        - mp_divnorm
        - mp_neg
        - mp_shl
        - mp_shr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:11489,9'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:11493,14'
          Dst:             js_bigint_sign
        - Src:             'quickjs.c:11494,14'
          Dst:             js_bigint_sign
        - Src:             'quickjs.c:11498,9'
          Dst:             js_bigint_new
        - Src:             'quickjs.c:11502,9'
          Dst:             mp_neg
        - Src:             'quickjs.c:11510,12'
          Dst:             js_malloc
        - Src:             'quickjs.c:11512,9'
          Dst:             js_free
        - Src:             'quickjs.c:11516,9'
          Dst:             mp_neg
        - Src:             'quickjs.c:11526,9'
          Dst:             js_free
        - Src:             'quickjs.c:11527,9'
          Dst:             js_free
        - Src:             'quickjs.c:11530,17'
          Dst:             js_bigint_new
        - Src:             'quickjs.c:11537,20'
          Dst:             js_bigint_new_si
        - Src:             'quickjs.c:11542,13'
          Dst:             js_limb_clz
        - Src:             'quickjs.c:11544,9'
          Dst:             mp_shl
        - Src:             'quickjs.c:11545,13'
          Dst:             mp_shl
        - Src:             'quickjs.c:11550,9'
          Dst:             js_bigint_new
        - Src:             'quickjs.c:11552,9'
          Dst:             js_free
        - Src:             'quickjs.c:11553,9'
          Dst:             js_free
        - Src:             'quickjs.c:11559,5'
          Dst:             mp_divnorm
        - Src:             'quickjs.c:11560,5'
          Dst:             js_free
        - Src:             'quickjs.c:11563,9'
          Dst:             js_free
        - Src:             'quickjs.c:11565,13'
          Dst:             mp_shr
        - Src:             'quickjs.c:11568,13'
          Dst:             mp_neg
        - Src:             'quickjs.c:11569,13'
          Dst:             js_bigint_normalize1
        - Src:             'quickjs.c:11572,9'
          Dst:             js_free
        - Src:             'quickjs.c:11575,13'
          Dst:             mp_neg
        - Src:             'quickjs.c:11577,13'
          Dst:             js_bigint_normalize
    - functionName:    js_bigint_pow
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11707
      functionLinenumberEnd: 11787
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         53
      ICount:          251
      EdgeCount:       74
      CyclomaticComplexity: 23
      functionsReached:
        - JS_ThrowRangeError
        - clz32
        - js_bigint_mul
        - js_bigint_new
        - js_bigint_new_si
        - js_bigint_sign
        - js_free
        - js_limb_clz
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:11713,9'
          Dst:             js_bigint_sign
        - Src:             'quickjs.c:11714,9'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:11719,16'
          Dst:             js_bigint_new_si
        - Src:             'quickjs.c:11726,20'
          Dst:             js_bigint_new_si
        - Src:             'quickjs.c:11728,20'
          Dst:             js_bigint_new_si
        - Src:             'quickjs.c:11736,36'
          Dst:             js_limb_clz
        - Src:             'quickjs.c:11748,17'
          Dst:             js_bigint_new
        - Src:             'quickjs.c:11765,9'
          Dst:             js_bigint_new
        - Src:             'quickjs.c:11763,19'
          Dst:             clz32
        - Src:             'quickjs.c:11770,14'
          Dst:             js_bigint_mul
        - Src:             'quickjs.c:11773,9'
          Dst:             js_free
        - Src:             'quickjs.c:11776,18'
          Dst:             js_bigint_mul
        - Src:             'quickjs.c:11779,13'
          Dst:             js_free
        - Src:             'quickjs.c:11785,5'
          Dst:             JS_ThrowRangeError
    - functionName:    JS_ToFloat64Free
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12664
      functionLinenumberEnd: 12677
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          36
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - __JS_ToFloat64Free
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:12675,16'
          Dst:             __JS_ToFloat64Free
    - functionName:    __JS_ToFloat64Free
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12638
      functionLinenumberEnd: 12661
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - JS_IsException
        - JS_ToNumberFree
        - abort
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs.c:12646,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:12642,11'
          Dst:             JS_ToNumberFree
        - Src:             'quickjs.c:12643,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:12654,9'
          Dst:             abort
    - functionName:    mp_neg
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10942
      functionLinenumberEnd: 10952
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          75
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mp_divnorm
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11093
      functionLinenumberEnd: 11156
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          187
      EdgeCount:       52
      CyclomaticComplexity: 15
      functionsReached:
        - mp_add
        - mp_div1norm
        - mp_sub
        - mp_sub_mul1
        - udiv1norm
        - udiv1norm_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:11099,19'
          Dst:             mp_div1norm
        - Src:             'quickjs.c:11105,18'
          Dst:             udiv1norm_init
        - Src:             'quickjs.c:11120,9'
          Dst:             mp_sub
        - Src:             'quickjs.c:11127,17'
          Dst:             udiv1norm
        - Src:             'quickjs.c:11134,13'
          Dst:             mp_sub_mul1
        - Src:             'quickjs.c:11145,21'
          Dst:             mp_add
    - functionName:    mp_div1norm
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11067
      functionLinenumberEnd: 11084
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          81
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - udiv1norm
        - udiv1norm_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:11072,17'
          Dst:             udiv1norm_init
        - Src:             'quickjs.c:11074,23'
          Dst:             udiv1norm
    - functionName:    udiv1norm_init
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11033
      functionLinenumberEnd: 11037
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mp_sub
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10924
      functionLinenumberEnd: 10937
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          87
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    udiv1norm
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11044
      functionLinenumberEnd: 11059
      functionDepth:   0
      returnType:      size_t
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          33
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mp_sub_mul1
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11018
      functionLinenumberEnd: 11028
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          42
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mp_add
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10914
      functionLinenumberEnd: 10919
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          42
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mp_mul_basecase
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11003
      functionLinenumberEnd: 11012
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          43
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - mp_add_mul1
        - mp_mul1
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:11007,24'
          Dst:             mp_mul1
        - Src:             'quickjs.c:11009,13'
          Dst:             mp_add_mul1
    - functionName:    mp_add_mul1
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10986
      functionLinenumberEnd: 10996
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          93
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pow
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        2
      argTypes:
        - double
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_malloc_usable_size
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1471
      functionLinenumberEnd: 1472
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_malloc_usable_size_rt
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1472,12'
          Dst:             js_malloc_usable_size_rt
    - functionName:    js_malloc_usable_size_rt
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1400
      functionLinenumberEnd: 1401
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_ToStringFree
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13252
      functionLinenumberEnd: 13256
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_FreeValue
        - JS_ToString
      functionUses:    29
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:13254,11'
          Dst:             JS_ToString
        - Src:             'quickjs.c:13255,5'
          Dst:             JS_FreeValue
    - functionName:    JS_ConcatString2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4295
      functionLinenumberEnd: 4308
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_ConcatString1
        - JS_ConcatStringInPlace
        - JS_FreeValue
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4299,9'
          Dst:             JS_ConcatStringInPlace
        - Src:             'quickjs.c:4300,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:4304,11'
          Dst:             JS_ConcatString1
        - Src:             'quickjs.c:4305,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:4306,5'
          Dst:             JS_FreeValue
    - functionName:    js_new_string_rope
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4456
      functionLinenumberEnd: 4517
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          128
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - JS_FreeValue
        - JS_ThrowInternalError
        - js_malloc
        - js_rebalancee_string_rope
        - max_int
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4482,17'
          Dst:             max_int
        - Src:             'quickjs.c:4485,9'
          Dst:             JS_ThrowInternalError
        - Src:             'quickjs.c:4488,9'
          Dst:             js_malloc
        - Src:             'quickjs.c:4503,16'
          Dst:             js_rebalancee_string_rope
        - Src:             'quickjs.c:4508,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:4514,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:4515,5'
          Dst:             JS_FreeValue
    - functionName:    js_rebalancee_string_rope
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4593
      functionLinenumberEnd: 4625
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          167
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - JS_AtomToString
        - JS_FreeValue
        - JS_IsException
        - JS_IsNull
        - js_new_string_rope
        - js_rebalancee_string_rope_rec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4599,9'
          Dst:             js_rebalancee_string_rope_rec
        - Src:             'quickjs.c:4604,14'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:4606,17'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:4609,21'
          Dst:             js_new_string_rope
        - Src:             'quickjs.c:4610,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:4616,9'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:4617,16'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:4622,9'
          Dst:             JS_FreeValue
    - functionName:    js_rebalancee_string_rope_rec
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4538
      functionLinenumberEnd: 4587
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          234
      EdgeCount:       51
      CyclomaticComplexity: 15
      functionsReached:
        - JS_DupValue
        - JS_IsException
        - JS_IsNull
        - js_new_string_rope
        - js_rebalancee_string_rope_rec
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4554,18'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:4556,21'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:4559,25'
          Dst:             js_new_string_rope
        - Src:             'quickjs.c:4560,25'
          Dst:             JS_IsException
        - Src:             'quickjs.c:4566,14'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:4567,44'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:4567,17'
          Dst:             js_new_string_rope
        - Src:             'quickjs.c:4568,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:4571,17'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:4573,17'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:4573,17'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:4574,17'
          Dst:             js_new_string_rope
        - Src:             'quickjs.c:4576,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:4583,9'
          Dst:             js_rebalancee_string_rope_rec
    - functionName:    JS_ConcatString1
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4235
      functionLinenumberEnd: 4256
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          82
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_ThrowInternalError
        - copy_str16
        - js_alloc_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4242,16'
          Dst:             JS_ThrowInternalError
        - Src:             'quickjs.c:4244,9'
          Dst:             js_alloc_string
        - Src:             'quickjs.c:4252,9'
          Dst:             copy_str16
        - Src:             'quickjs.c:4253,9'
          Dst:             copy_str16
    - functionName:    copy_str16
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4221
      functionLinenumberEnd: 4231
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          193
      EdgeCount:       50
      CyclomaticComplexity: 15
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_GetOwnPropertyNamesInternal
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8201
      functionLinenumberEnd: 8400
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         144
      ICount:          714
      EdgeCount:       199
      CyclomaticComplexity: 57
      functionsReached:
        - JS_AtomGetKind
        - JS_AtomIsArrayIndex
        - JS_DupAtom
        - JS_FreeAtom
        - JS_FreePropertyEnum
        - JS_GetOwnPropertyInternal
        - JS_IsUninitialized
        - JS_ThrowOutOfMemory
        - JS_ThrowReferenceErrorUninitialized
        - __JS_AtomFromUInt32
        - __assert_fail
        - get_shape_prop
        - js_free
        - js_free_desc
        - js_malloc
        - js_string_obj_get_length
        - max_int
        - num_keys_cmp
        - rqsort
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:8225,22'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:8229,20'
          Dst:             JS_AtomGetKind
        - Src:             'quickjs.c:8237,25'
          Dst:             JS_IsUninitialized
        - Src:             'quickjs.c:8238,25'
          Dst:             JS_ThrowReferenceErrorUninitialized
        - Src:             'quickjs.c:8242,21'
          Dst:             JS_AtomIsArrayIndex
        - Src:             'quickjs.c:8260,35'
          Dst:             js_string_obj_get_length
        - Src:             'quickjs.c:8270,28'
          Dst:             JS_AtomGetKind
        - Src:             'quickjs.c:8277,35'
          Dst:             JS_GetOwnPropertyInternal
        - Src:             'quickjs.c:8279,33'
          Dst:             JS_FreePropertyEnum
        - Src:             'quickjs.c:8285,33'
          Dst:             js_free_desc
        - Src:             'quickjs.c:8309,9'
          Dst:             JS_ThrowOutOfMemory
        - Src:             'quickjs.c:8310,9'
          Dst:             JS_FreePropertyEnum
        - Src:             'quickjs.c:8316,53'
          Dst:             max_int
        - Src:             'quickjs.c:8316,16'
          Dst:             js_malloc
        - Src:             'quickjs.c:8318,9'
          Dst:             JS_FreePropertyEnum
        - Src:             'quickjs.c:8328,22'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:8332,20'
          Dst:             JS_AtomGetKind
        - Src:             'quickjs.c:8335,21'
          Dst:             JS_AtomIsArrayIndex
        - Src:             'quickjs.c:8343,36'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:8358,23'
          Dst:             js_string_obj_get_length
        - Src:             'quickjs.c:8361,48'
          Dst:             __JS_AtomFromUInt32
        - Src:             'quickjs.c:8375,24'
          Dst:             JS_AtomGetKind
        - Src:             'quickjs.c:8382,21'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:8385,13'
          Dst:             js_free
        - Src:             'quickjs.c:8389,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:8390,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:8391,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:8394,9'
          Dst:             rqsort
        - Src:             'quickjs.c:8394,9'
          Dst:             num_keys_cmp
    - functionName:    JS_GetOwnPropertyInternal
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8418
      functionLinenumberEnd: 8492
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          294
      EdgeCount:       71
      CyclomaticComplexity: 23
      functionsReached:
        - JS_AutoInitProperty
        - JS_DupValue
        - JS_GetPropertyUint32
        - JS_IsUninitialized
        - JS_ThrowReferenceErrorUninitialized
        - __JS_AtomIsTaggedInt
        - __JS_AtomToUInt32
        - get_shape_prop
      functionUses:    24
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:8423,11'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:8434,40'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:8436,40'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:8439,25'
          Dst:             JS_IsUninitialized
        - Src:             'quickjs.c:8443,35'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:8440,25'
          Dst:             JS_ThrowReferenceErrorUninitialized
        - Src:             'quickjs.c:8446,25'
          Dst:             JS_AutoInitProperty
        - Src:             'quickjs.c:8451,31'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:8456,21'
          Dst:             JS_IsUninitialized
        - Src:             'quickjs.c:8457,21'
          Dst:             JS_ThrowReferenceErrorUninitialized
        - Src:             'quickjs.c:8469,17'
          Dst:             __JS_AtomIsTaggedInt
        - Src:             'quickjs.c:8471,23'
          Dst:             __JS_AtomToUInt32
        - Src:             'quickjs.c:8478,39'
          Dst:             JS_GetPropertyUint32
    - functionName:    js_free_desc
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9252
      functionLinenumberEnd: 9256
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_FreeValue
      functionUses:    23
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:9253,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9254,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9255,5'
          Dst:             JS_FreeValue
    - functionName:    JS_SetProperty
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 785
      functionLinenumberEnd: 786
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_SetPropertyInternal
      functionUses:    27
      BranchProfiles:  []
      Callsites:
        - Src:             './quickjs.h:786,12'
          Dst:             JS_SetPropertyInternal
    - functionName:    JS_FreePropertyEnum
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8186
      functionLinenumberEnd: 8193
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          43
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeAtom
        - js_free
      functionUses:    22
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:8190,13'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:8191,9'
          Dst:             js_free
    - functionName:    JS_AutoInitProperty
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7768
      functionLinenumberEnd: 7807
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          115
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - JS_IsException
        - js_autoinit_free
        - js_autoinit_get_id
        - js_autoinit_get_realm
        - js_create_var_ref
        - js_shape_prepare_update
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7774,9'
          Dst:             js_shape_prepare_update
        - Src:             'quickjs.c:7777,13'
          Dst:             js_autoinit_get_realm
        - Src:             'quickjs.c:7778,10'
          Dst:             js_autoinit_get_id
        - Src:             'quickjs.c:7782,5'
          Dst:             js_autoinit_free
        - Src:             'quickjs.c:7785,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:7796,19'
          Dst:             js_create_var_ref
    - functionName:    JS_GetPropertyUint32
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8705
      functionLinenumberEnd: 8706
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_GetPropertyValue
        - __JS_NewFloat64
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:8706,47'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:8706,12'
          Dst:             JS_GetPropertyValue
    - functionName:    js_autoinit_get_id
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5681
      functionLinenumberEnd: 5682
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_create_var_ref
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16606
      functionLinenumberEnd: 16622
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          49
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - add_gc_object
        - js_malloc
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:16608,15'
          Dst:             js_malloc
        - Src:             'quickjs.c:16620,5'
          Dst:             add_gc_object
    - functionName:    js_instantiate_prototype
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16969
      functionLinenumberEnd: 16987
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_DefinePropertyValue
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_NewObject
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:16974,11'
          Dst:             JS_NewObject
        - Src:             'quickjs.c:16975,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:16980,34'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:16979,11'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:16983,9'
          Dst:             JS_FreeValue
    - functionName:    js_module_ns_autoinit
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29799
      functionLinenumberEnd: 29824
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          71
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_GetModuleNamespace
        - js_resolve_export
        - js_resolve_export_throw_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:29806,11'
          Dst:             js_resolve_export
        - Src:             'quickjs.c:29809,9'
          Dst:             js_resolve_export_throw_error
        - Src:             'quickjs.c:29813,16'
          Dst:             JS_GetModuleNamespace
    - functionName:    JS_InstantiateFunctionListItem2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38985
      functionLinenumberEnd: 39010
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          71
      EdgeCount:       21
      CyclomaticComplexity: 12
      functionsReached:
        - JS_NewAtomString
        - JS_NewCFunction2
        - JS_NewObjectProtoList
        - abort
      functionUses:    0
      BranchProfiles:
        - Branch String:   'quickjs.c:38989,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:38991,15'
          Dst:             JS_NewCFunction2
        - Src:             'quickjs.c:38995,15'
          Dst:             JS_NewAtomString
        - Src:             'quickjs.c:39003,15'
          Dst:             JS_NewObjectProtoList
        - Src:             'quickjs.c:39007,9'
          Dst:             abort
    - functionName:    JS_NewCFunction2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5585
      functionLinenumberEnd: 5587
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_NewCFunction3
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5586,12'
          Dst:             JS_NewCFunction3
    - functionName:    JS_NewAtomString
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4033
      functionLinenumberEnd: 4040
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_AtomToString
        - JS_FreeAtom
        - JS_NewAtom
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4034,19'
          Dst:             JS_NewAtom
        - Src:             'quickjs.c:4037,19'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:4038,5'
          Dst:             JS_FreeAtom
    - functionName:    JS_NewObjectProtoList
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38971
      functionLinenumberEnd: 38981
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          44
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_NewObjectProtoClassAlloc
        - JS_SetPropertyFunctionList
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:38973,11'
          Dst:             JS_NewObjectProtoClassAlloc
        - Src:             'quickjs.c:38974,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:38976,9'
          Dst:             JS_SetPropertyFunctionList
        - Src:             'quickjs.c:38977,9'
          Dst:             JS_FreeValue
    - functionName:    JS_NewObjectProtoClassAlloc
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5364
      functionLinenumberEnd: 5381
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_NewObjectFromShape
        - clz32
        - get_proto_obj
        - js_new_shape_nohash
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5373,26'
          Dst:             clz32
        - Src:             'quickjs.c:5376,13'
          Dst:             get_proto_obj
        - Src:             'quickjs.c:5377,10'
          Dst:             js_new_shape_nohash
        - Src:             'quickjs.c:5380,12'
          Dst:             JS_NewObjectFromShape
    - functionName:    JS_SetPropertyFunctionList
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39125
      functionLinenumberEnd: 39139
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          52
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_FreeAtom
        - JS_InstantiateFunctionListItem
        - find_atom
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39130,23'
          Dst:             find_atom
        - Src:             'quickjs.c:39133,15'
          Dst:             JS_InstantiateFunctionListItem
        - Src:             'quickjs.c:39134,9'
          Dst:             JS_FreeAtom
    - functionName:    find_atom
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38947
      functionLinenumberEnd: 38967
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          72
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - JS_DupAtom
        - JS_NewAtom
        - abort
        - memcmp
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:38953,15'
          Dst:             strlen
        - Src:             'quickjs.c:38959,37'
          Dst:             memcmp
        - Src:             'quickjs.c:38960,24'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:38962,9'
          Dst:             abort
        - Src:             'quickjs.c:38964,16'
          Dst:             JS_NewAtom
    - functionName:    JS_InstantiateFunctionListItem
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39015
      functionLinenumberEnd: 39121
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         57
      ICount:          318
      EdgeCount:       67
      CyclomaticComplexity: 12
      functionsReached:
        - JS_AtomToValue
        - JS_DefineAutoInitProperty
        - JS_DefinePropertyGetSet
        - JS_DefinePropertyValue
        - JS_FreeAtom
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_NewCFunction2
        - __JS_NewFloat64
        - abort
        - find_atom
        - snprintf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs.c:39019,5'
          Branch Sides:    []
        - Branch String:   'quickjs.c:39023,13'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:39022,28'
          Dst:             find_atom
        - Src:             'quickjs.c:39025,23'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:39028,23'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:39031,23'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:39034,17'
          Dst:             abort
        - Src:             'quickjs.c:39036,13'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:39037,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39056,13'
          Dst:             JS_DefineAutoInitProperty
        - Src:             'quickjs.c:39068,17'
          Dst:             snprintf
        - Src:             'quickjs.c:39069,26'
          Dst:             JS_NewCFunction2
        - Src:             'quickjs.c:39072,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39077,17'
          Dst:             snprintf
        - Src:             'quickjs.c:39078,26'
          Dst:             JS_NewCFunction2
        - Src:             'quickjs.c:39081,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39082,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:39086,17'
          Dst:             JS_DefinePropertyGetSet
        - Src:             'quickjs.c:39095,15'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:39098,15'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:39104,15'
          Dst:             JS_AtomToValue
        - Src:             'quickjs.c:39111,13'
          Dst:             JS_DefineAutoInitProperty
        - Src:             'quickjs.c:39116,9'
          Dst:             abort
        - Src:             'quickjs.c:39118,9'
          Dst:             JS_DefinePropertyValue
    - functionName:    JS_DefineAutoInitProperty
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10250
      functionLinenumberEnd: 10275
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          95
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - JS_DupContext
        - __assert_fail
        - abort
        - add_property
        - get_shape_prop
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:10259,9'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:10261,9'
          Dst:             abort
        - Src:             'quickjs.c:10266,10'
          Dst:             add_property
        - Src:             'quickjs.c:10269,42'
          Dst:             JS_DupContext
        - Src:             'quickjs.c:10270,5'
          Dst:             __assert_fail
    - functionName:    snprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    19
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_DefinePropertyGetSet
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10337
      functionLinenumberEnd: 10344
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DefineProperty
        - JS_FreeValue
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:10339,11'
          Dst:             JS_DefineProperty
        - Src:             'quickjs.c:10342,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:10343,5'
          Dst:             JS_FreeValue
    - functionName:    JS_DupContext
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2298
      functionLinenumberEnd: 2300
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_NewAtom
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3065
      functionLinenumberEnd: 3066
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_NewAtomLen
        - strlen
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3066,36'
          Dst:             strlen
        - Src:             'quickjs.c:3066,12'
          Dst:             JS_NewAtomLen
    - functionName:    JS_NewAtomLen
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3048
      functionLinenumberEnd: 3062
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          72
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - JS_IsException
        - JS_NewAtomStr
        - JS_NewStringLen
        - __JS_FindAtom
        - count_ascii
        - is_digit
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3052,11'
          Dst:             is_digit
        - Src:             'quickjs.c:3053,10'
          Dst:             count_ascii
        - Src:             'quickjs.c:3054,23'
          Dst:             __JS_FindAtom
        - Src:             'quickjs.c:3058,11'
          Dst:             JS_NewStringLen
        - Src:             'quickjs.c:3059,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:3061,12'
          Dst:             JS_NewAtomStr
    - functionName:    count_ascii
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3037
      functionLinenumberEnd: 3043
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          37
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __JS_FindAtom
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2937
      functionLinenumberEnd: 2959
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          109
      EdgeCount:       30
      CyclomaticComplexity: 10
      functionsReached:
        - __JS_AtomIsConst
        - hash_string8
        - memcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:2941,9'
          Dst:             hash_string8
        - Src:             'quickjs.c:2951,13'
          Dst:             memcmp
        - Src:             'quickjs.c:2952,18'
          Dst:             __JS_AtomIsConst
    - functionName:    JS_NewStringLen
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3945
      functionLinenumberEnd: 3999
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          177
      EdgeCount:       53
      CyclomaticComplexity: 16
      functionsReached:
        - JS_ThrowInternalError
        - count_ascii
        - get_hi_surrogate
        - get_lo_surrogate
        - js_new_string8_len
        - string_buffer_end
        - string_buffer_free
        - string_buffer_init
        - string_buffer_putc16
        - string_buffer_putc8
        - string_buffer_write8
        - unicode_from_utf8
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3953,12'
          Dst:             count_ascii
        - Src:             'quickjs.c:3956,16'
          Dst:             JS_ThrowInternalError
        - Src:             'quickjs.c:3959,16'
          Dst:             js_new_string8_len
        - Src:             'quickjs.c:3961,13'
          Dst:             string_buffer_init
        - Src:             'quickjs.c:3963,9'
          Dst:             string_buffer_write8
        - Src:             'quickjs.c:3966,17'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:3969,21'
          Dst:             unicode_from_utf8
        - Src:             'quickjs.c:3975,45'
          Dst:             get_hi_surrogate
        - Src:             'quickjs.c:3975,21'
          Dst:             string_buffer_putc16
        - Src:             'quickjs.c:3976,25'
          Dst:             get_lo_surrogate
        - Src:             'quickjs.c:3990,17'
          Dst:             string_buffer_putc16
        - Src:             'quickjs.c:3994,12'
          Dst:             string_buffer_end
        - Src:             'quickjs.c:3997,5'
          Dst:             string_buffer_free
    - functionName:    JS_NewAtomStr
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3022
      functionLinenumberEnd: 3033
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          41
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - __JS_AtomFromUInt32
        - __JS_NewAtom
        - is_num_string
        - js_free_string
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3025,9'
          Dst:             is_num_string
        - Src:             'quickjs.c:3027,13'
          Dst:             js_free_string
        - Src:             'quickjs.c:3028,20'
          Dst:             __JS_AtomFromUInt32
        - Src:             'quickjs.c:3032,12'
          Dst:             __JS_NewAtom
    - functionName:    js_free_string
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1973
      functionLinenumberEnd: 1984
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          36
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeAtomStruct
        - js_free_rt
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1976,13'
          Dst:             JS_FreeAtomStruct
        - Src:             'quickjs.c:1981,13'
          Dst:             js_free_rt
    - functionName:    __JS_NewAtom
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2767
      functionLinenumberEnd: 2919
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         66
      ICount:          407
      EdgeCount:       92
      CyclomaticComplexity: 28
      functionsReached:
        - JS_ResizeAtomHash
        - __JS_AtomIsConst
        - atom_get_free
        - atom_set_free
        - hash_string
        - js_free_rt
        - js_free_string
        - js_get_atom_index
        - js_malloc_rt
        - js_mallocz_rt
        - js_realloc_rt
        - js_string_memcmp
        - max_int
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:2779,17'
          Dst:             js_get_atom_index
        - Src:             'quickjs.c:2781,17'
          Dst:             __JS_AtomIsConst
        - Src:             'quickjs.c:2787,13'
          Dst:             hash_string
        - Src:             'quickjs.c:2796,17'
          Dst:             js_string_memcmp
        - Src:             'quickjs.c:2797,22'
          Dst:             __JS_AtomIsConst
        - Src:             'quickjs.c:2822,20'
          Dst:             max_int
        - Src:             'quickjs.c:2826,21'
          Dst:             js_realloc_rt
        - Src:             'quickjs.c:2833,17'
          Dst:             js_mallocz_rt
        - Src:             'quickjs.c:2835,17'
          Dst:             js_free_rt
        - Src:             'quickjs.c:2856,33'
          Dst:             atom_set_free
        - Src:             'quickjs.c:2865,17'
          Dst:             js_malloc_rt
        - Src:             'quickjs.c:2878,13'
          Dst:             js_free_string
        - Src:             'quickjs.c:2881,13'
          Dst:             js_malloc_rt
        - Src:             'quickjs.c:2894,27'
          Dst:             atom_get_free
        - Src:             'quickjs.c:2907,13'
          Dst:             JS_ResizeAtomHash
        - Src:             'quickjs.c:2917,9'
          Dst:             js_free_string
    - functionName:    js_get_atom_index
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2748
      functionLinenumberEnd: 2761
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          72
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:2756,13'
          Dst:             __assert_fail
    - functionName:    hash_string
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2549
      functionLinenumberEnd: 2554
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_string16
        - hash_string8
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:2551,13'
          Dst:             hash_string16
        - Src:             'quickjs.c:2553,13'
          Dst:             hash_string8
    - functionName:    js_mallocz_rt
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1405
      functionLinenumberEnd: 1411
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          23
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - js_malloc_rt
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1407,11'
          Dst:             js_malloc_rt
    - functionName:    atom_get_free
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1927
      functionLinenumberEnd: 1928
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_ResizeAtomHash
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2636
      functionLinenumberEnd: 2663
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          109
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - __assert_fail
        - js_free_rt
        - js_mallocz_rt
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:2640,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:2642,16'
          Dst:             js_mallocz_rt
        - Src:             'quickjs.c:2657,5'
          Dst:             js_free_rt
    - functionName:    hash_string16
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2540
      functionLinenumberEnd: 2545
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          91
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_string8
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2530
      functionLinenumberEnd: 2535
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          91
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    string_buffer_init
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3614
      functionLinenumberEnd: 3615
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - string_buffer_init2
      functionUses:    26
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3615,12'
          Dst:             string_buffer_init2
    - functionName:    string_buffer_write8
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3783
      functionLinenumberEnd: 3800
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          136
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - string_buffer_realloc
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3787,13'
          Dst:             string_buffer_realloc
    - functionName:    string_buffer_putc8
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3702
      functionLinenumberEnd: 3713
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          69
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - string_buffer_realloc
      functionUses:    34
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3704,13'
          Dst:             string_buffer_realloc
    - functionName:    get_hi_surrogate
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 351
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    string_buffer_putc16
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3717
      functionLinenumberEnd: 3728
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          63
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - string_buffer_putc16_slow
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3727,12'
          Dst:             string_buffer_putc16_slow
    - functionName:    get_lo_surrogate
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 356
      functionLinenumberEnd: 357
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    string_buffer_end
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3912
      functionLinenumberEnd: 3941
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          110
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - JS_AtomToString
        - js_free
        - js_realloc_rt
      functionUses:    32
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3918,9'
          Dst:             js_free
        - Src:             'quickjs.c:3920,16'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:3926,15'
          Dst:             js_realloc_rt
    - functionName:    string_buffer_free
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3619
      functionLinenumberEnd: 3622
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_free
      functionUses:    24
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3620,5'
          Dst:             js_free
    - functionName:    string_buffer_putc16_slow
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3683
      functionLinenumberEnd: 3698
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          95
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - string_buffer_realloc
        - string_buffer_widen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3685,13'
          Dst:             string_buffer_realloc
        - Src:             'quickjs.c:3693,13'
          Dst:             string_buffer_widen
    - functionName:    string_buffer_realloc
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3656
      functionLinenumberEnd: 3680
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          90
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - JS_ThrowInternalError
        - js_realloc2
        - max_int
        - min_int
        - string_buffer_set_error
        - string_buffer_widen
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3665,9'
          Dst:             JS_ThrowInternalError
        - Src:             'quickjs.c:3666,16'
          Dst:             string_buffer_set_error
        - Src:             'quickjs.c:3668,24'
          Dst:             max_int
        - Src:             'quickjs.c:3668,16'
          Dst:             min_int
        - Src:             'quickjs.c:3670,16'
          Dst:             string_buffer_widen
        - Src:             'quickjs.c:3673,15'
          Dst:             js_realloc2
        - Src:             'quickjs.c:3675,16'
          Dst:             string_buffer_set_error
        - Src:             'quickjs.c:3676,16'
          Dst:             min_int
    - functionName:    string_buffer_widen
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3634
      functionLinenumberEnd: 3653
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         34
      ICount:          181
      EdgeCount:       46
      CyclomaticComplexity: 14
      functionsReached:
        - js_realloc2
        - string_buffer_set_error
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3642,11'
          Dst:             js_realloc2
        - Src:             'quickjs.c:3644,16'
          Dst:             string_buffer_set_error
    - functionName:    js_realloc2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1456
      functionLinenumberEnd: 1468
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          55
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - JS_ThrowOutOfMemory
        - js_malloc_usable_size_rt
        - js_realloc_rt
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1458,11'
          Dst:             js_realloc_rt
        - Src:             'quickjs.c:1460,9'
          Dst:             JS_ThrowOutOfMemory
        - Src:             'quickjs.c:1464,27'
          Dst:             js_malloc_usable_size_rt
    - functionName:    string_buffer_set_error
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3625
      functionLinenumberEnd: 3630
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_free
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3626,5'
          Dst:             js_free
    - functionName:    string_buffer_init2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3595
      functionLinenumberEnd: 3611
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - js_alloc_string
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3601,14'
          Dst:             js_alloc_string
    - functionName:    get_proto_obj
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5334
      functionLinenumberEnd: 5339
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          18
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_new_shape_nohash
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4818
      functionLinenumberEnd: 4840
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_DupValue
        - add_gc_object
        - get_shape_from_alloc
        - get_shape_size
        - js_malloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4823,31'
          Dst:             get_shape_size
        - Src:             'quickjs.c:4823,16'
          Dst:             js_malloc
        - Src:             'quickjs.c:4826,10'
          Dst:             get_shape_from_alloc
        - Src:             'quickjs.c:4828,5'
          Dst:             add_gc_object
        - Src:             'quickjs.c:4830,9'
          Dst:             JS_DupValue
    - functionName:    JS_NewObjectFromShape
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5214
      functionLinenumberEnd: 5331
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         63
      ICount:          318
      EdgeCount:       73
      CyclomaticComplexity: 12
      functionsReached:
        - add_gc_object
        - add_property
        - free_property
        - get_shape_prop
        - js_free
        - js_free_shape
        - js_malloc
        - js_trigger_gc
      functionUses:    7
      BranchProfiles:
        - Branch String:   'quickjs.c:5250,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:5218,5'
          Dst:             js_trigger_gc
        - Src:             'quickjs.c:5219,9'
          Dst:             js_malloc
        - Src:             'quickjs.c:5235,15'
          Dst:             js_malloc
        - Src:             'quickjs.c:5237,9'
          Dst:             js_free
        - Src:             'quickjs.c:5240,36'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:5242,17'
          Dst:             free_property
        - Src:             'quickjs.c:5246,9'
          Dst:             js_free_shape
        - Src:             'quickjs.c:5269,26'
          Dst:             add_property
        - Src:             'quickjs.c:5325,5'
          Dst:             add_gc_object
    - functionName:    js_trigger_gc
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1360
      functionLinenumberEnd: 1377
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_RunGC
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1373,9'
          Dst:             JS_RunGC
    - functionName:    JS_RunGC
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6435
      functionLinenumberEnd: 6437
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_RunGCInternal
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:6436,5'
          Dst:             JS_RunGCInternal
    - functionName:    JS_RunGCInternal
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6415
      functionLinenumberEnd: 6432
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          26
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gc_decref
        - gc_free_cycles
        - gc_remove_weak_objects
        - gc_scan
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:6420,9'
          Dst:             gc_remove_weak_objects
        - Src:             'quickjs.c:6425,5'
          Dst:             gc_decref
        - Src:             'quickjs.c:6428,5'
          Dst:             gc_scan
        - Src:             'quickjs.c:6431,5'
          Dst:             gc_free_cycles
    - functionName:    gc_remove_weak_objects
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6110
      functionLinenumberEnd: 6137
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          63
      EdgeCount:       14
      CyclomaticComplexity: 2
      functionsReached:
        - abort
        - finrec_delete_weakref
        - free_zero_refcount
        - map_delete_weakrefs
        - weakref_delete_weakref
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs.c:6119,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:6121,13'
          Dst:             map_delete_weakrefs
        - Src:             'quickjs.c:6124,13'
          Dst:             weakref_delete_weakref
        - Src:             'quickjs.c:6127,13'
          Dst:             finrec_delete_weakref
        - Src:             'quickjs.c:6130,13'
          Dst:             abort
        - Src:             'quickjs.c:6136,5'
          Dst:             free_zero_refcount
    - functionName:    gc_decref
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6297
      functionLinenumberEnd: 6316
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          66
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
        - gc_decref_child
        - init_list_head
        - list_add_tail
        - list_del
        - mark_children
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:6301,5'
          Dst:             init_list_head
        - Src:             'quickjs.c:6308,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:6309,9'
          Dst:             mark_children
        - Src:             'quickjs.c:6309,9'
          Dst:             gc_decref_child
        - Src:             'quickjs.c:6312,13'
          Dst:             list_del
        - Src:             'quickjs.c:6313,13'
          Dst:             list_add_tail
    - functionName:    gc_scan
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6336
      functionLinenumberEnd: 6353
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          74
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - __assert_fail
        - gc_scan_incref_child
        - gc_scan_incref_child2
        - mark_children
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:6343,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:6345,9'
          Dst:             mark_children
        - Src:             'quickjs.c:6345,9'
          Dst:             gc_scan_incref_child
        - Src:             'quickjs.c:6351,9'
          Dst:             mark_children
        - Src:             'quickjs.c:6351,9'
          Dst:             gc_scan_incref_child2
    - functionName:    gc_free_cycles
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6356
      functionLinenumberEnd: 6412
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         34
      ICount:          142
      EdgeCount:       41
      CyclomaticComplexity: 9
      functionsReached:
        - __assert_fail
        - free_gc_object
        - init_list_head
        - js_free_rt
        - list_add_tail
        - list_del
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs.c:6373,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:6386,13'
          Dst:             free_gc_object
        - Src:             'quickjs.c:6389,13'
          Dst:             list_del
        - Src:             'quickjs.c:6390,13'
          Dst:             list_add_tail
        - Src:             'quickjs.c:6398,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:6407,13'
          Dst:             js_free_rt
        - Src:             'quickjs.c:6411,5'
          Dst:             init_list_head
    - functionName:    init_list_head
      functionSourceFile: '/src/quickjs/./list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    17
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gc_scan_incref_child
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6319
      functionLinenumberEnd: 6328
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - list_add_tail
        - list_del
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:6324,9'
          Dst:             list_del
        - Src:             'quickjs.c:6325,9'
          Dst:             list_add_tail
    - functionName:    mark_children
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6169
      functionLinenumberEnd: 6284
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         62
      ICount:          333
      EdgeCount:       81
      CyclomaticComplexity: 21
      functionsReached:
        - JS_MarkContext
        - JS_MarkValue
        - abort
        - get_shape_prop
        - js_autoinit_mark
        - js_mark_module_def
      functionUses:    3
      BranchProfiles:
        - Branch String:   'quickjs.c:6170,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:6180,19'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:6195,29'
          Dst:             js_autoinit_mark
        - Src:             'quickjs.c:6198,25'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:6218,17'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:6228,17'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:6245,17'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:6246,17'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:6254,25'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:6257,13'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:6258,13'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:6272,13'
          Dst:             JS_MarkContext
        - Src:             'quickjs.c:6278,13'
          Dst:             js_mark_module_def
        - Src:             'quickjs.c:6282,9'
          Dst:             abort
    - functionName:    gc_scan_incref_child2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6331
      functionLinenumberEnd: 6333
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gc_decref_child
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6287
      functionLinenumberEnd: 6294
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          47
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - list_add_tail
        - list_del
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:6288,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:6291,9'
          Dst:             list_del
        - Src:             'quickjs.c:6292,9'
          Dst:             list_add_tail
    - functionName:    js_autoinit_mark
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5692
      functionLinenumberEnd: 5694
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_autoinit_get_realm
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5693,20'
          Dst:             js_autoinit_get_realm
    - functionName:    JS_MarkValue
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6153
      functionLinenumberEnd: 6165
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          34
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    83
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_MarkContext
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2306
      functionLinenumberEnd: 2350
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          243
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - JS_MarkValue
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:2312,9'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:2315,5'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:2316,5'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:2318,5'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:2319,5'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:2321,5'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:2323,9'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:2323,9'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:2323,9'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:2323,9'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:2323,9'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:2323,9'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:2323,9'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:2323,9'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:2326,9'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:2328,5'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:2329,5'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:2330,5'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:2331,5'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:2332,5'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:2333,5'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:2334,5'
          Dst:             JS_MarkValue
    - functionName:    js_mark_module_def
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29108
      functionLinenumberEnd: 29132
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          135
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - JS_MarkValue
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:29113,9'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:29124,5'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:29125,5'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:29126,5'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:29127,5'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:29128,5'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:29129,5'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:29130,5'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:29131,5'
          Dst:             JS_MarkValue
    - functionName:    map_delete_weakrefs
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51404
      functionLinenumberEnd: 51433
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          97
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - js_weakref_is_live
        - map_delete_record_internal
        - map_hash_key
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51412,14'
          Dst:             js_weakref_is_live
        - Src:             'quickjs.c:51415,17'
          Dst:             map_hash_key
        - Src:             'quickjs.c:51430,13'
          Dst:             map_delete_record_internal
    - functionName:    weakref_delete_weakref
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60437
      functionLinenumberEnd: 60444
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - js_weakref_free
        - js_weakref_is_live
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:60440,10'
          Dst:             js_weakref_is_live
        - Src:             'quickjs.c:60441,9'
          Dst:             js_weakref_free
    - functionName:    finrec_delete_weakref
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60546
      functionLinenumberEnd: 60572
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          94
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - JS_EnqueueJob2
        - JS_FreeValueRT
        - js_finrec_job
        - js_free_rt
        - js_weakref_free
        - js_weakref_is_live
        - list_del
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:60553,14'
          Dst:             js_weakref_is_live
        - Src:             'quickjs.c:60554,13'
          Dst:             js_weakref_free
        - Src:             'quickjs.c:60558,14'
          Dst:             js_weakref_is_live
        - Src:             'quickjs.c:60563,13'
          Dst:             JS_EnqueueJob2
        - Src:             'quickjs.c:60563,13'
          Dst:             js_finrec_job
        - Src:             'quickjs.c:60565,13'
          Dst:             js_weakref_free
        - Src:             'quickjs.c:60566,13'
          Dst:             js_weakref_free
        - Src:             'quickjs.c:60567,13'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:60568,13'
          Dst:             list_del
        - Src:             'quickjs.c:60569,13'
          Dst:             js_free_rt
    - functionName:    js_finrec_job
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60541
      functionLinenumberEnd: 60542
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_Call
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:60542,12'
          Dst:             JS_Call
    - functionName:    JS_EnqueueJob2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1852
      functionLinenumberEnd: 1871
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          83
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - JS_DupContext
        - JS_DupValue
        - js_malloc
        - js_malloc_rt
        - list_add_tail
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1858,13'
          Dst:             js_malloc_rt
        - Src:             'quickjs.c:1860,13'
          Dst:             js_malloc
        - Src:             'quickjs.c:1863,16'
          Dst:             JS_DupContext
        - Src:             'quickjs.c:1867,22'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:1869,5'
          Dst:             list_add_tail
    - functionName:    map_hash_key
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51226
      functionLinenumberEnd: 51280
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          186
      EdgeCount:       39
      CyclomaticComplexity: 7
      functionsReached:
        - float64_as_uint64
        - hash_string
        - hash_string_rope
        - js_bigint_set_short
        - map_hash32
        - map_hash64
        - map_hash_pointer
      functionUses:    5
      BranchProfiles:
        - Branch String:   'quickjs.c:51233,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:51235,13'
          Dst:             map_hash32
        - Src:             'quickjs.c:51238,24'
          Dst:             hash_string
        - Src:             'quickjs.c:51238,13'
          Dst:             map_hash32
        - Src:             'quickjs.c:51241,24'
          Dst:             hash_string_rope
        - Src:             'quickjs.c:51241,13'
          Dst:             map_hash32
        - Src:             'quickjs.c:51245,13'
          Dst:             map_hash_pointer
        - Src:             'quickjs.c:51256,24'
          Dst:             float64_as_uint64
        - Src:             'quickjs.c:51256,13'
          Dst:             map_hash64
        - Src:             'quickjs.c:51259,13'
          Dst:             js_bigint_set_short
        - Src:             'quickjs.c:51272,17'
          Dst:             map_hash32
    - functionName:    map_delete_record_internal
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51371
      functionLinenumberEnd: 51391
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          80
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeValueRT
        - js_free_rt
        - js_weakref_free
        - list_del
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51376,9'
          Dst:             js_weakref_free
        - Src:             'quickjs.c:51378,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:51380,5'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:51382,9'
          Dst:             list_del
        - Src:             'quickjs.c:51383,9'
          Dst:             js_free_rt
    - functionName:    map_hash32
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51205
      functionLinenumberEnd: 51206
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_string_rope
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2558
      functionLinenumberEnd: 2566
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - hash_string
        - hash_string_rope
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:2560,16'
          Dst:             hash_string
        - Src:             'quickjs.c:2563,13'
          Dst:             hash_string_rope
    - functionName:    map_hash_pointer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51215
      functionLinenumberEnd: 51217
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - map_hash64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51217,12'
          Dst:             map_hash64
    - functionName:    map_hash64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51210
      functionLinenumberEnd: 51211
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_NewCFunction3
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5547
      functionLinenumberEnd: 5579
      functionDepth:   0
      returnType:      'N/A'
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          120
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - JS_DupContext
        - JS_FreeAtom
        - JS_FreeValue
        - JS_IsException
        - JS_NewAtom
        - JS_NewObjectProtoClass
        - JS_NewObjectProtoClassAlloc
        - js_function_set_properties
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5553,20'
          Dst:             JS_NewObjectProtoClassAlloc
        - Src:             'quickjs.c:5555,20'
          Dst:             JS_NewObjectProtoClass
        - Src:             'quickjs.c:5557,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:5560,24'
          Dst:             JS_DupContext
        - Src:             'quickjs.c:5571,17'
          Dst:             JS_NewAtom
        - Src:             'quickjs.c:5573,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:5576,5'
          Dst:             js_function_set_properties
        - Src:             'quickjs.c:5577,5'
          Dst:             JS_FreeAtom
    - functionName:    js_function_set_properties
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5454
      functionLinenumberEnd: 5460
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_AtomToString
        - JS_DefinePropertyValue
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5456,5'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:5459,28'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:5458,5'
          Dst:             JS_DefinePropertyValue
    - functionName:    js_resolve_export
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29633
      functionLinenumberEnd: 29649
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          44
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeAtom
        - js_free
        - js_resolve_export1
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:29642,11'
          Dst:             js_resolve_export1
        - Src:             'quickjs.c:29645,9'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:29646,5'
          Dst:             js_free
    - functionName:    js_resolve_export_throw_error
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29654
      functionLinenumberEnd: 29677
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          43
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - JS_AtomGetStr
        - JS_ThrowSyntaxError
      functionUses:    4
      BranchProfiles:
        - Branch String:   'quickjs.c:29657,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:0,0'
          Dst:             JS_AtomGetStr
        - Src:             'quickjs.c:0,0'
          Dst:             JS_AtomGetStr
        - Src:             'quickjs.c:0,0'
          Dst:             JS_ThrowSyntaxError
    - functionName:    JS_GetModuleNamespace
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29932
      functionLinenumberEnd: 29941
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          50
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_DupValue
        - JS_IsException
        - JS_IsUndefined
        - js_build_module_ns
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:29933,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:29935,15'
          Dst:             js_build_module_ns
        - Src:             'quickjs.c:29936,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:29940,12'
          Dst:             JS_DupValue
    - functionName:    js_build_module_ns
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29827
      functionLinenumberEnd: 29929
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         41
      ICount:          224
      EdgeCount:       53
      CyclomaticComplexity: 14
      functionsReached:
        - JS_AtomToString
        - JS_DefineAutoInitProperty
        - JS_DefinePropertyValue
        - JS_FreeValue
        - JS_IsException
        - JS_NewObjectClass
        - add_property
        - exported_names_cmp
        - get_exported_names
        - js_free
        - js_resolve_export
        - js_resolve_export_throw_error
        - rqsort
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs.c:29890,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:29834,11'
          Dst:             JS_NewObjectClass
        - Src:             'quickjs.c:29835,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:29840,11'
          Dst:             get_exported_names
        - Src:             'quickjs.c:29841,5'
          Dst:             js_free
        - Src:             'quickjs.c:29885,5'
          Dst:             rqsort
        - Src:             'quickjs.c:29885,5'
          Dst:             exported_names_cmp
        - Src:             'quickjs.c:29857,19'
          Dst:             js_resolve_export
        - Src:             'quickjs.c:29862,17'
          Dst:             js_resolve_export_throw_error
        - Src:             'quickjs.c:29885,5'
          Dst:             rqsort
        - Src:             'quickjs.c:29885,5'
          Dst:             exported_names_cmp
        - Src:             'quickjs.c:29894,22'
          Dst:             add_property
        - Src:             'quickjs.c:29906,17'
          Dst:             JS_DefineAutoInitProperty
        - Src:             'quickjs.c:29917,5'
          Dst:             js_free
        - Src:             'quickjs.c:29920,28'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:29919,5'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:29926,5'
          Dst:             js_free
        - Src:             'quickjs.c:29927,5'
          Dst:             JS_FreeValue
    - functionName:    JS_NewObjectClass
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5431
      functionLinenumberEnd: 5432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_NewObjectProtoClass
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5432,12'
          Dst:             JS_NewObjectProtoClass
    - functionName:    get_exported_names
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29718
      functionLinenumberEnd: 29762
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          209
      EdgeCount:       57
      CyclomaticComplexity: 17
      functionsReached:
        - find_exported_name
        - get_exported_names
        - js_resize_array
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:29727,9'
          Dst:             js_resize_array
        - Src:             'quickjs.c:29736,13'
          Dst:             find_exported_name
        - Src:             'quickjs.c:29738,17'
          Dst:             js_resize_array
        - Src:             'quickjs.c:29758,13'
          Dst:             get_exported_names
    - functionName:    exported_names_cmp
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29775
      functionLinenumberEnd: 29794
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          45
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_AtomToString
        - JS_FreeValue
        - JS_IsException
        - js_string_compare
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:29783,12'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:29784,12'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:29785,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:29785,33'
          Dst:             JS_IsException
        - Src:             'quickjs.c:29789,15'
          Dst:             js_string_compare
        - Src:             'quickjs.c:29792,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:29793,5'
          Dst:             JS_FreeValue
    - functionName:    js_resize_array
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1512
      functionLinenumberEnd: 1517
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          25
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - js_realloc_array
      functionUses:    23
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1514,16'
          Dst:             js_realloc_array
    - functionName:    find_exported_name
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29706
      functionLinenumberEnd: 29713
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          40
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_realloc_array
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1494
      functionLinenumberEnd: 1507
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - js_realloc2
        - max_int
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1499,16'
          Dst:             max_int
        - Src:             'quickjs.c:1500,17'
          Dst:             js_realloc2
    - functionName:    JS_AtomGetStr
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3178
      functionLinenumberEnd: 3179
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_AtomGetStrRT
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3179,12'
          Dst:             JS_AtomGetStrRT
    - functionName:    JS_ThrowSyntaxError
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7276
      functionLinenumberEnd: 7284
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_ThrowError
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7281,11'
          Dst:             JS_ThrowError
    - functionName:    JS_AtomGetStrRT
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3133
      functionLinenumberEnd: 3175
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          211
      EdgeCount:       59
      CyclomaticComplexity: 16
      functionsReached:
        - __JS_AtomIsTaggedInt
        - __JS_AtomToUInt32
        - __assert_fail
        - atom_is_free
        - snprintf
        - string_get
        - unicode_to_utf8
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3134,9'
          Dst:             __JS_AtomIsTaggedInt
        - Src:             'quickjs.c:3135,39'
          Dst:             __JS_AtomToUInt32
        - Src:             'quickjs.c:3135,9'
          Dst:             snprintf
        - Src:             'quickjs.c:3138,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:3148,13'
          Dst:             atom_is_free
        - Src:             'quickjs.c:3148,13'
          Dst:             __assert_fail
        - Src:             'quickjs.c:3161,25'
          Dst:             string_get
        - Src:             'quickjs.c:3167,30'
          Dst:             unicode_to_utf8
    - functionName:    atom_is_free
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1932
      functionLinenumberEnd: 1933
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_resolve_export1
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29557
      functionLinenumberEnd: 29623
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          198
      EdgeCount:       58
      CyclomaticComplexity: 18
      functionsReached:
        - add_resolve_entry
        - find_export_entry
        - find_resolve_entry
        - js_resolve_export1
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:29562,9'
          Dst:             find_resolve_entry
        - Src:             'quickjs.c:29564,9'
          Dst:             add_resolve_entry
        - Src:             'quickjs.c:29566,10'
          Dst:             find_export_entry
        - Src:             'quickjs.c:29562,9'
          Dst:             find_resolve_entry
        - Src:             'quickjs.c:29599,23'
          Dst:             js_resolve_export1
    - functionName:    find_resolve_entry
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29518
      functionLinenumberEnd: 29526
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          51
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_resolve_entry
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29530
      functionLinenumberEnd: 29541
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_DupAtom
        - js_resize_array
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:29533,9'
          Dst:             js_resize_array
        - Src:             'quickjs.c:29539,16'
          Dst:             JS_DupAtom
    - functionName:    find_export_entry
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29205
      functionLinenumberEnd: 29214
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          40
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_AtomGetKind
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2719
      functionLinenumberEnd: 2740
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          60
      EdgeCount:       25
      CyclomaticComplexity: 14
      functionsReached:
        - __JS_AtomIsTaggedInt
        - abort
      functionUses:    5
      BranchProfiles:
        - Branch String:   'quickjs.c:2727,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:2724,9'
          Dst:             __JS_AtomIsTaggedInt
        - Src:             'quickjs.c:2738,9'
          Dst:             abort
    - functionName:    js_string_obj_get_length
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8153
      functionLinenumberEnd: 8163
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    num_keys_cmp
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8167
      functionLinenumberEnd: 8183
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          60
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - JS_AtomIsArrayIndex
        - __assert_fail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:8174,24'
          Dst:             JS_AtomIsArrayIndex
        - Src:             'quickjs.c:8175,24'
          Dst:             JS_AtomIsArrayIndex
        - Src:             'quickjs.c:8176,5'
          Dst:             __assert_fail
    - functionName:    js_create_array_iterator
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42897
      functionLinenumberEnd: 42930
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          75
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_NewObjectClass
        - JS_SetOpaque
        - JS_ToObject
        - JS_ToStringCheckObject
        - js_malloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:42906,15'
          Dst:             JS_ToStringCheckObject
        - Src:             'quickjs.c:42909,15'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:42912,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:42914,16'
          Dst:             JS_NewObjectClass
        - Src:             'quickjs.c:42915,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:42917,10'
          Dst:             js_malloc
        - Src:             'quickjs.c:42923,5'
          Dst:             JS_SetOpaque
        - Src:             'quickjs.c:42926,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42928,5'
          Dst:             JS_FreeValue
    - functionName:    JS_IsCFunction
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10575
      functionLinenumberEnd: 10584
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          41
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_GetIterator
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16129
      functionLinenumberEnd: 16160
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          115
      EdgeCount:       30
      CyclomaticComplexity: 10
      functionsReached:
        - JS_CreateAsyncFromSyncIterator
        - JS_FreeValue
        - JS_GetIterator2
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsFunction
        - JS_IsNull
        - JS_IsUndefined
        - JS_ThrowTypeError
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:16133,18'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:16134,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:16136,13'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:16136,39'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:16137,22'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:16138,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:16140,25'
          Dst:             JS_GetIterator2
        - Src:             'quickjs.c:16141,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:16142,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:16144,19'
          Dst:             JS_CreateAsyncFromSyncIterator
        - Src:             'quickjs.c:16145,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:16149,18'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:16150,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:16153,10'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:16154,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:16155,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:16157,11'
          Dst:             JS_GetIterator2
        - Src:             'quickjs.c:16158,5'
          Dst:             JS_FreeValue
    - functionName:    js_array_iterator_next
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42935
      functionLinenumberEnd: 42991
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          189
      EdgeCount:       46
      CyclomaticComplexity: 14
      functionsReached:
        - JS_FreeValue
        - JS_GetOpaque2
        - JS_GetPropertyUint32
        - JS_IsException
        - JS_IsUndefined
        - JS_ThrowTypeErrorArrayBufferOOB
        - __JS_NewFloat64
        - js_create_array
        - js_get_length32
        - typed_array_is_oob
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:42941,10'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:42944,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:42949,13'
          Dst:             typed_array_is_oob
        - Src:             'quickjs.c:42950,13'
          Dst:             JS_ThrowTypeErrorArrayBufferOOB
        - Src:             'quickjs.c:42955,13'
          Dst:             js_get_length32
        - Src:             'quickjs.c:42963,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42972,16'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:42974,15'
          Dst:             JS_GetPropertyUint32
        - Src:             'quickjs.c:42975,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:42982,19'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:42985,19'
          Dst:             js_create_array
        - Src:             'quickjs.c:42986,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42987,13'
          Dst:             JS_FreeValue
    - functionName:    js_get_fast_array
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16428
      functionLinenumberEnd: 16439
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          43
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_get_length32
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40541
      functionLinenumberEnd: 40549
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_ToUint32Free
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:40543,15'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:40544,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40548,12'
          Dst:             JS_ToUint32Free
    - functionName:    JS_DefinePropertyValueUint32
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10306
      functionLinenumberEnd: 10307
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_DefinePropertyValueValue
        - __JS_NewFloat64
      functionUses:    21
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:10307,55'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:10307,12'
          Dst:             JS_DefinePropertyValueValue
    - functionName:    JS_IteratorNext
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16207
      functionLinenumberEnd: 16237
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          87
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IteratorNext2
        - JS_ToBoolFree
      functionUses:    51
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:16211,11'
          Dst:             JS_IteratorNext2
        - Src:             'quickjs.c:16212,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:16218,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:16222,20'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:16223,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:16225,18'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:16228,21'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:16230,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:16234,5'
          Dst:             JS_FreeValue
    - functionName:    JS_IteratorNext2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16166
      functionLinenumberEnd: 16201
      functionDepth:   0
      returnType:      'N/A'
      argCount:        8
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          106
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - JS_Call
        - JS_FreeValue
        - JS_IsException
        - JS_IsObject
        - JS_ThrowTypeError
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:16171,9'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:16188,11'
          Dst:             JS_Call
        - Src:             'quickjs.c:16189,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:16191,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:16192,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:16193,9'
          Dst:             JS_ThrowTypeError
    - functionName:    typed_array_is_oob
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56663
      functionLinenumberEnd: 56686
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          97
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - __assert_fail
      functionUses:    24
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56669,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:56670,5'
          Dst:             __assert_fail
    - functionName:    JS_ThrowTypeErrorArrayBufferOOB
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56276
      functionLinenumberEnd: 56277
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_ThrowTypeError
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56277,12'
          Dst:             JS_ThrowTypeError
    - functionName:    JS_GetIterator2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16115
      functionLinenumberEnd: 16126
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          40
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_Call
        - JS_FreeValue
        - JS_IsException
        - JS_IsObject
        - JS_ThrowTypeErrorNotAnObject
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:16118,16'
          Dst:             JS_Call
        - Src:             'quickjs.c:16119,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:16121,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:16122,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:16123,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
    - functionName:    JS_CreateAsyncFromSyncIterator
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53729
      functionLinenumberEnd: 53751
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          67
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_NewObjectClass
        - JS_SetOpaque
        - js_mallocz
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:53733,19'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:53734,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53736,18'
          Dst:             JS_NewObjectClass
        - Src:             'quickjs.c:53737,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53738,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53741,9'
          Dst:             js_mallocz
        - Src:             'quickjs.c:53743,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53744,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53747,20'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:53749,5'
          Dst:             JS_SetOpaque
    - functionName:    js_mallocz
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1427
      functionLinenumberEnd: 1435
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          25
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_ThrowOutOfMemory
        - js_mallocz_rt
      functionUses:    36
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1429,11'
          Dst:             js_mallocz_rt
        - Src:             'quickjs.c:1431,9'
          Dst:             JS_ThrowOutOfMemory
    - functionName:    JS_SetOpaque
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10621
      functionLinenumberEnd: 10627
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          19
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    19
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_ToStringCheckObject
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13272
      functionLinenumberEnd: 13277
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          39
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_ThrowTypeError
        - JS_ToString
      functionUses:    21
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:13275,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:13276,12'
          Dst:             JS_ToString
    - functionName:    add_fast_array_element
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9143
      functionLinenumberEnd: 9169
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          87
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - JS_FreeValue
        - JS_ThrowTypeErrorReadOnly
        - expand_fast_array
        - get_shape_prop
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:9153,17'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:9154,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9155,24'
          Dst:             JS_ThrowTypeErrorReadOnly
        - Src:             'quickjs.c:9161,13'
          Dst:             expand_fast_array
        - Src:             'quickjs.c:9162,13'
          Dst:             JS_FreeValue
    - functionName:    JS_ToUint8ClampFree
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12983
      functionLinenumberEnd: 13022
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          80
      EdgeCount:       23
      CyclomaticComplexity: 5
      functionsReached:
        - JS_IsException
        - JS_ToNumberFree
        - lrint
        - max_int
        - min_int
      functionUses:    2
      BranchProfiles:
        - Branch String:   'quickjs.c:12989,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:12995,26'
          Dst:             min_int
        - Src:             'quickjs.c:12995,15'
          Dst:             max_int
        - Src:             'quickjs.c:13008,27'
          Dst:             lrint
        - Src:             'quickjs.c:13013,15'
          Dst:             JS_ToNumberFree
        - Src:             'quickjs.c:13014,13'
          Dst:             JS_IsException
    - functionName:    JS_ToBigInt64Free
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14292
      functionLinenumberEnd: 14314
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          41
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_ToBigIntFree
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:14295,11'
          Dst:             JS_ToBigIntFree
        - Src:             'quickjs.c:14296,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:14310,9'
          Dst:             JS_FreeValue
    - functionName:    tofp16
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 413
      functionLinenumberEnd: 444
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          69
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - float64_as_uint64
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './cutils.h:418,9'
          Dst:             float64_as_uint64
    - functionName:    JS_ToBigIntFree
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14249
      functionLinenumberEnd: 14283
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          85
      EdgeCount:       19
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_StringToBigIntErr
        - JS_ThrowTypeError
        - JS_ToPrimitiveFree
        - __JS_NewShortBigInt
      functionUses:    3
      BranchProfiles:
        - Branch String:   'quickjs.c:14254,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:14264,15'
          Dst:             __JS_NewShortBigInt
        - Src:             'quickjs.c:14268,15'
          Dst:             JS_StringToBigIntErr
        - Src:             'quickjs.c:14269,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:14273,15'
          Dst:             JS_ToPrimitiveFree
        - Src:             'quickjs.c:14274,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:14279,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:14280,16'
          Dst:             JS_ThrowTypeError
    - functionName:    JS_StringToBigIntErr
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14240
      functionLinenumberEnd: 14245
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_StringToBigInt
        - JS_ThrowSyntaxError
        - JS_VALUE_IS_NAN
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:14241,11'
          Dst:             JS_StringToBigInt
        - Src:             'quickjs.c:14242,9'
          Dst:             JS_VALUE_IS_NAN
        - Src:             'quickjs.c:14243,16'
          Dst:             JS_ThrowSyntaxError
    - functionName:    JS_VALUE_IS_NAN
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lrint
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    expand_fast_array
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9124
      functionLinenumberEnd: 9137
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - js_realloc2
        - max_int
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:9129,16'
          Dst:             max_int
        - Src:             'quickjs.c:9130,22'
          Dst:             js_realloc2
    - functionName:    JS_NewBigUint64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14197
      functionLinenumberEnd: 14207
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          36
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - __JS_NewShortBigInt
        - js_bigint_new_ui64
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:14199,16'
          Dst:             __JS_NewShortBigInt
        - Src:             'quickjs.c:14202,13'
          Dst:             js_bigint_new_ui64
    - functionName:    fromfp16
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 402
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - uint64_as_float64
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             './cutils.h:408,9'
          Dst:             uint64_as_float64
    - functionName:    uint64_as_float64
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 392
      functionLinenumberEnd: 398
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_bigint_new_ui64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11290
      functionLinenumberEnd: 11308
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          26
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - js_bigint_new
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:11295,13'
          Dst:             js_bigint_new
    - functionName:    JS_IsConstructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10587
      functionLinenumberEnd: 10593
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          23
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_closure2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16894
      functionLinenumberEnd: 16966
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          233
      EdgeCount:       58
      CyclomaticComplexity: 12
      functionsReached:
        - JS_CheckDefineGlobalVar
        - JS_FreeValue
        - get_var_ref
        - js_closure_define_global_var
        - js_closure_global_var
        - js_create_var_ref
        - js_mallocz
      functionUses:    3
      BranchProfiles:
        - Branch String:   'quickjs.c:16927,13'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:16904,20'
          Dst:             js_mallocz
        - Src:             'quickjs.c:16919,25'
          Dst:             JS_CheckDefineGlobalVar
        - Src:             'quickjs.c:16932,27'
          Dst:             js_create_var_ref
        - Src:             'quickjs.c:16935,27'
          Dst:             js_closure_define_global_var
        - Src:             'quickjs.c:16938,27'
          Dst:             js_closure_global_var
        - Src:             'quickjs.c:16942,27'
          Dst:             get_var_ref
        - Src:             'quickjs.c:16946,27'
          Dst:             get_var_ref
        - Src:             'quickjs.c:16964,5'
          Dst:             JS_FreeValue
    - functionName:    JS_SetConstructorBit
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10596
      functionLinenumberEnd: 10603
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_CheckDefineGlobalVar
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10419
      functionLinenumberEnd: 10455
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          197
      EdgeCount:       62
      CyclomaticComplexity: 19
      functionsReached:
        - JS_ThrowSyntaxErrorVarRedeclaration
        - __JS_ThrowTypeErrorAtom
        - get_shape_prop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:10424,11'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:10439,21'
          Dst:             __JS_ThrowTypeErrorAtom
        - Src:             'quickjs.c:10448,11'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:10451,9'
          Dst:             JS_ThrowSyntaxErrorVarRedeclaration
    - functionName:    js_closure_define_global_var
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16754
      functionLinenumberEnd: 16853
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         71
      ICount:          407
      EdgeCount:       96
      CyclomaticComplexity: 27
      functionsReached:
        - JS_AutoInitProperty
        - __assert_fail
        - add_property
        - free_property
        - free_var_ref
        - get_shape_prop
        - js_create_var_ref
        - js_global_object_find_uninitialized_var
        - js_global_object_get_uninitialized_var
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:16767,15'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:16769,13'
          Dst:             __assert_fail
        - Src:             'quickjs.c:16778,15'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:16781,24'
          Dst:             js_create_var_ref
        - Src:             'quickjs.c:16797,15'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:16800,21'
          Dst:             JS_AutoInitProperty
        - Src:             'quickjs.c:16804,27'
          Dst:             js_global_object_get_uninitialized_var
        - Src:             'quickjs.c:16816,21'
          Dst:             free_property
        - Src:             'quickjs.c:16821,21'
          Dst:             __assert_fail
        - Src:             'quickjs.c:16830,20'
          Dst:             js_global_object_get_uninitialized_var
        - Src:             'quickjs.c:16836,15'
          Dst:             js_global_object_find_uninitialized_var
        - Src:             'quickjs.c:16845,10'
          Dst:             add_property
        - Src:             'quickjs.c:16847,9'
          Dst:             free_var_ref
    - functionName:    js_closure_global_var
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16856
      functionLinenumberEnd: 16887
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         29
      ICount:          155
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - JS_AutoInitProperty
        - __assert_fail
        - get_shape_prop
        - js_global_object_get_uninitialized_var
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:16863,11'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:16865,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:16872,11'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:16876,17'
          Dst:             JS_AutoInitProperty
        - Src:             'quickjs.c:16886,12'
          Dst:             js_global_object_get_uninitialized_var
    - functionName:    js_global_object_get_uninitialized_var
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16698
      functionLinenumberEnd: 16723
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          98
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - __assert_fail
        - add_property
        - free_var_ref
        - get_shape_prop
        - js_create_var_ref
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:16704,11'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:16706,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:16712,15'
          Dst:             js_create_var_ref
        - Src:             'quickjs.c:16715,10'
          Dst:             add_property
        - Src:             'quickjs.c:16717,9'
          Dst:             free_var_ref
    - functionName:    js_global_object_find_uninitialized_var
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16729
      functionLinenumberEnd: 16750
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          98
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - __assert_fail
        - delete_property
        - get_shape_prop
        - js_create_var_ref
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:16736,11'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:16738,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:16741,9'
          Dst:             delete_property
        - Src:             'quickjs.c:16745,19'
          Dst:             js_create_var_ref
    - functionName:    __JS_ThrowTypeErrorAtom
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7314
      functionLinenumberEnd: 7318
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_AtomGetStr
        - JS_ThrowTypeError
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7317,30'
          Dst:             JS_AtomGetStr
        - Src:             'quickjs.c:7316,12'
          Dst:             JS_ThrowTypeError
    - functionName:    JS_ToArrayLengthFree
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13026
      functionLinenumberEnd: 13084
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          134
      EdgeCount:       45
      CyclomaticComplexity: 15
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_ThrowRangeError
        - JS_ToArrayLengthFree
        - JS_ToNumberFree
        - JS_ToUint32
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:13055,23'
          Dst:             JS_ToNumberFree
        - Src:             'quickjs.c:13056,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:13059,21'
          Dst:             JS_ToArrayLengthFree
        - Src:             'quickjs.c:13063,21'
          Dst:             JS_ToUint32
        - Src:             'quickjs.c:13064,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:13067,23'
          Dst:             JS_ToNumberFree
        - Src:             'quickjs.c:13068,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:13071,21'
          Dst:             JS_ToArrayLengthFree
        - Src:             'quickjs.c:13075,21'
          Dst:             JS_ThrowRangeError
    - functionName:    check_define_prop_flags
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9872
      functionLinenumberEnd: 9898
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          88
      EdgeCount:       30
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_ThrowTypeErrorOrFalse
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7298
      functionLinenumberEnd: 7310
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          47
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_ThrowError
        - is_strict_mode
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7302,44'
          Dst:             is_strict_mode
        - Src:             'quickjs.c:7304,9'
          Dst:             JS_ThrowError
    - functionName:    set_array_length
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9034
      functionLinenumberEnd: 9120
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         61
      ICount:          316
      EdgeCount:       84
      CyclomaticComplexity: 25
      functionsReached:
        - JS_AtomIsArrayIndex
        - JS_FreeAtom
        - JS_FreeValue
        - JS_NewAtomUInt32
        - JS_ThrowTypeErrorOrFalse
        - JS_ThrowTypeErrorReadOnly
        - JS_ToArrayLengthFree
        - JS_ToUint32
        - __JS_NewFloat64
        - delete_property
        - get_shape_prop
        - set_value
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:9039,11'
          Dst:             JS_ToArrayLengthFree
        - Src:             'quickjs.c:9044,16'
          Dst:             JS_ThrowTypeErrorReadOnly
        - Src:             'quickjs.c:9050,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9054,30'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:9058,9'
          Dst:             JS_ToUint32
        - Src:             'quickjs.c:9071,28'
          Dst:             JS_NewAtomUInt32
        - Src:             'quickjs.c:9072,27'
          Dst:             delete_property
        - Src:             'quickjs.c:9073,21'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:9086,33'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:9089,25'
          Dst:             JS_AtomIsArrayIndex
        - Src:             'quickjs.c:9100,25'
          Dst:             JS_AtomIsArrayIndex
        - Src:             'quickjs.c:9103,29'
          Dst:             delete_property
        - Src:             'quickjs.c:9106,34'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:9114,45'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:9114,9'
          Dst:             set_value
        - Src:             'quickjs.c:9116,20'
          Dst:             JS_ThrowTypeErrorOrFalse
    - functionName:    js_update_property_flags
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9930
      functionLinenumberEnd: 9937
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          40
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - js_shape_prepare_update
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:9932,13'
          Dst:             js_shape_prepare_update
    - functionName:    get_prop_flags
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9719
      functionLinenumberEnd: 9722
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_AtomIsNumericIndex1
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3248
      functionLinenumberEnd: 3296
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          146
      EdgeCount:       35
      CyclomaticComplexity: 9
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_ToNumber
        - JS_ToString
        - __JS_AtomIsTaggedInt
        - __JS_AtomToUInt32
        - __JS_NewFloat64
        - __assert_fail
        - is_num
        - js_string_eq
        - string_get
      functionUses:    2
      BranchProfiles:
        - Branch String:   'quickjs.c:3261,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:3255,9'
          Dst:             __JS_AtomIsTaggedInt
        - Src:             'quickjs.c:3256,33'
          Dst:             __JS_AtomToUInt32
        - Src:             'quickjs.c:3257,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:3263,16'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:3265,16'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:3267,16'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:3269,16'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:3276,9'
          Dst:             string_get
        - Src:             'quickjs.c:3277,10'
          Dst:             is_num
        - Src:             'quickjs.c:3280,11'
          Dst:             JS_ToNumber
        - Src:             'quickjs.c:3281,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:3283,11'
          Dst:             JS_ToString
        - Src:             'quickjs.c:3284,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:3285,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:3288,11'
          Dst:             js_string_eq
        - Src:             'quickjs.c:3289,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:3293,9'
          Dst:             JS_FreeValue
    - functionName:    JS_NumberIsInteger
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13120
      functionLinenumberEnd: 13127
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          46
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - JS_IsNumber
        - JS_ToFloat64
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:13122,10'
          Dst:             JS_IsNumber
        - Src:             'quickjs.c:13124,9'
          Dst:             JS_ToFloat64
    - functionName:    JS_NumberIsNegativeOrMinusZero
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13130
      functionLinenumberEnd: 13157
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          44
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - js_bigint_sign
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs.c:13134,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:13152,20'
          Dst:             js_bigint_sign
    - functionName:    JS_CreateProperty
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9729
      functionLinenumberEnd: 9868
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         102
      ICount:          524
      EdgeCount:       144
      CyclomaticComplexity: 44
      functionsReached:
        - JS_AtomIsArrayIndex
        - JS_AtomIsNumericIndex
        - JS_DupValue
        - JS_IsExtensible
        - JS_IsFunction
        - JS_ThrowTypeErrorOrFalse
        - JS_ThrowTypeErrorReadOnly
        - JS_ToUint32
        - __JS_AtomIsTaggedInt
        - __JS_AtomToUInt32
        - __JS_NewFloat64
        - add_fast_array_element
        - add_property
        - convert_fast_array_to_array
        - delete_property
        - free_var_ref
        - get_prop_flags
        - get_shape_prop
        - js_create_var_ref
        - set_value
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:9741,21'
          Dst:             __JS_AtomIsTaggedInt
        - Src:             'quickjs.c:9742,27'
          Dst:             __JS_AtomToUInt32
        - Src:             'quickjs.c:9748,38'
          Dst:             get_prop_flags
        - Src:             'quickjs.c:9752,55'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:9751,32'
          Dst:             add_fast_array_element
        - Src:             'quickjs.c:9756,28'
          Dst:             JS_AtomIsArrayIndex
        - Src:             'quickjs.c:9759,25'
          Dst:             convert_fast_array_to_array
        - Src:             'quickjs.c:9763,24'
          Dst:             JS_AtomIsArrayIndex
        - Src:             'quickjs.c:9769,17'
          Dst:             JS_ToUint32
        - Src:             'quickjs.c:9771,29'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:9773,32'
          Dst:             JS_ThrowTypeErrorReadOnly
        - Src:             'quickjs.c:9777,52'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:9777,21'
          Dst:             set_value
        - Src:             'quickjs.c:9782,19'
          Dst:             JS_AtomIsNumericIndex
        - Src:             'quickjs.c:9786,24'
          Dst:             JS_ThrowTypeErrorOrFalse
        - Src:             'quickjs.c:9795,23'
          Dst:             JS_IsExtensible
        - Src:             'quickjs.c:9806,16'
          Dst:             JS_ThrowTypeErrorOrFalse
        - Src:             'quickjs.c:9820,20'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:9826,27'
          Dst:             js_create_var_ref
        - Src:             'quickjs.c:9834,10'
          Dst:             add_property
        - Src:             'quickjs.c:9834,10'
          Dst:             add_property
        - Src:             'quickjs.c:9834,10'
          Dst:             add_property
        - Src:             'quickjs.c:9837,13'
          Dst:             free_var_ref
        - Src:             'quickjs.c:9842,42'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:9844,17'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:9847,42'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:9849,17'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:9853,13'
          Dst:             delete_property
        - Src:             'quickjs.c:9856,32'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:9862,27'
          Dst:             JS_DupValue
    - functionName:    JS_ToUint32
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 723
      functionLinenumberEnd: 724
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_ToInt32
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             './quickjs.h:724,12'
          Dst:             JS_ToInt32
    - functionName:    JS_AtomIsNumericIndex
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3300
      functionLinenumberEnd: 3309
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          36
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_AtomIsNumericIndex1
        - JS_FreeValue
        - JS_IsException
        - JS_IsUndefined
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3302,11'
          Dst:             JS_AtomIsNumericIndex1
        - Src:             'quickjs.c:3303,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:3305,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:3307,5'
          Dst:             JS_FreeValue
    - functionName:    JS_IsExtensible
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8506
      functionLinenumberEnd: 8519
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          65
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_ToInt32
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12973
      functionLinenumberEnd: 12974
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
        - JS_ToInt32Free
      functionUses:    36
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:12974,38'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:12974,12'
          Dst:             JS_ToInt32Free
    - functionName:    JS_IsNumber
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 612
      functionLinenumberEnd: 614
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_ToFloat64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12680
      functionLinenumberEnd: 12681
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
        - JS_ToFloat64Free
      functionUses:    26
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:12681,40'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:12681,12'
          Dst:             JS_ToFloat64Free
    - functionName:    JS_ToNumber
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12685
      functionLinenumberEnd: 12686
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
        - JS_ToNumberFree
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:12686,33'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:12686,12'
          Dst:             JS_ToNumberFree
    - functionName:    JS_NewAtomUInt32
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3070
      functionLinenumberEnd: 3084
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          46
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_IsException
        - __JS_AtomFromUInt32
        - __JS_NewAtom
        - js_new_string8_len
        - u32toa
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3072,16'
          Dst:             __JS_AtomFromUInt32
        - Src:             'quickjs.c:3077,15'
          Dst:             u32toa
        - Src:             'quickjs.c:3078,15'
          Dst:             js_new_string8_len
        - Src:             'quickjs.c:3079,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:3081,16'
          Dst:             __JS_NewAtom
    - functionName:    js_get_function_name
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5508
      functionLinenumberEnd: 5515
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_AtomSymbolHasDescription
        - JS_AtomToString
        - JS_ConcatString3
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5511,16'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:5512,9'
          Dst:             JS_AtomSymbolHasDescription
        - Src:             'quickjs.c:5513,20'
          Dst:             JS_ConcatString3
    - functionName:    JS_ConcatString3
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4003
      functionLinenumberEnd: 4030
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          81
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_ToStringFree
        - string_buffer_concat
        - string_buffer_end
        - string_buffer_init2
        - string_buffer_write8
        - strlen
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4009,16'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:4010,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:4014,12'
          Dst:             strlen
        - Src:             'quickjs.c:4015,12'
          Dst:             strlen
        - Src:             'quickjs.c:4017,9'
          Dst:             string_buffer_init2
        - Src:             'quickjs.c:4020,5'
          Dst:             string_buffer_write8
        - Src:             'quickjs.c:4021,5'
          Dst:             string_buffer_concat
        - Src:             'quickjs.c:4022,5'
          Dst:             string_buffer_write8
        - Src:             'quickjs.c:4024,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:4025,12'
          Dst:             string_buffer_end
        - Src:             'quickjs.c:4028,5'
          Dst:             JS_FreeValue
    - functionName:    string_buffer_concat
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3836
      functionLinenumberEnd: 3843
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          43
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - string_buffer_write16
        - string_buffer_write8
      functionUses:    25
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3840,16'
          Dst:             string_buffer_write16
        - Src:             'quickjs.c:3842,16'
          Dst:             string_buffer_write8
    - functionName:    string_buffer_write16
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3803
      functionLinenumberEnd: 3826
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          228
      EdgeCount:       57
      CyclomaticComplexity: 17
      functionsReached:
        - string_buffer_realloc
        - string_buffer_widen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3810,13'
          Dst:             string_buffer_realloc
        - Src:             'quickjs.c:3813,13'
          Dst:             string_buffer_widen
    - functionName:    JS_AtomSymbolHasDescription
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3325
      functionLinenumberEnd: 3337
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          71
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - __JS_AtomIsTaggedInt
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3330,9'
          Dst:             __JS_AtomIsTaggedInt
    - functionName:    js_symbol_to_atom
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8596
      functionLinenumberEnd: 8598
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_get_atom_index
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:8598,12'
          Dst:             js_get_atom_index
    - functionName:    js_object_has_name
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10358
      functionLinenumberEnd: 10374
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          84
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - get_shape_prop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:10364,11'
          Dst:             get_shape_prop
    - functionName:    JS_ThrowTypeErrorNotASymbol
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7415
      functionLinenumberEnd: 7416
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_ThrowTypeError
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7416,12'
          Dst:             JS_ThrowTypeError
    - functionName:    JS_ThrowTypeErrorPrivateNotFound
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7966
      functionLinenumberEnd: 7967
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __JS_ThrowTypeErrorAtom
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7967,12'
          Dst:             __JS_ThrowTypeErrorAtom
    - functionName:    JS_NewSymbol
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3105
      functionLinenumberEnd: 3112
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_ThrowOutOfMemory
        - __JS_NewAtom
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3108,12'
          Dst:             __JS_NewAtom
        - Src:             'quickjs.c:3110,16'
          Dst:             JS_ThrowOutOfMemory
    - functionName:    JS_IteratorGetCompleteValue
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16345
      functionLinenumberEnd: 16360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_ToBoolFree
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:16348,16'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:16349,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:16351,12'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:16352,13'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:16353,9'
          Dst:             JS_IsException
    - functionName:    js_for_in_prepare_prototype_chain_enum
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15958
      functionLinenumberEnd: 16016
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          146
      EdgeCount:       38
      CyclomaticComplexity: 12
      functionsReached:
        - JS_DefinePropertyValue
        - JS_DupValue
        - JS_FreePropertyEnum
        - JS_FreeValue
        - JS_GetOwnPropertyNamesInternal
        - JS_GetPrototypeFree
        - JS_IsException
        - JS_IsNull
        - js_poll_interrupts
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:15969,12'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:15971,16'
          Dst:             JS_GetPrototypeFree
        - Src:             'quickjs.c:15972,13'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:15974,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:15976,13'
          Dst:             JS_GetOwnPropertyNamesInternal
        - Src:             'quickjs.c:15982,9'
          Dst:             JS_FreePropertyEnum
        - Src:             'quickjs.c:15984,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15988,13'
          Dst:             js_poll_interrupts
        - Src:             'quickjs.c:15999,13'
          Dst:             JS_GetOwnPropertyNamesInternal
        - Src:             'quickjs.c:16010,13'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:0,0'
          Dst:             JS_FreeValue
    - functionName:    build_for_in_iterator
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15884
      functionLinenumberEnd: 15944
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          169
      EdgeCount:       45
      CyclomaticComplexity: 14
      functionsReached:
        - JS_FreeValue
        - JS_GetOwnPropertyNamesInternal
        - JS_IsException
        - JS_NewObjectProtoClass
        - JS_ToObjectFree
        - get_shape_prop
        - js_free
        - js_malloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:15894,15'
          Dst:             JS_ToObjectFree
        - Src:             'quickjs.c:15897,10'
          Dst:             js_malloc
        - Src:             'quickjs.c:15899,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15902,16'
          Dst:             JS_NewObjectProtoClass
        - Src:             'quickjs.c:15903,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:15904,9'
          Dst:             js_free
        - Src:             'quickjs.c:15905,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:15926,26'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:15935,13'
          Dst:             JS_GetOwnPropertyNamesInternal
        - Src:             'quickjs.c:15937,13'
          Dst:             JS_FreeValue
    - functionName:    JS_ToObjectFree
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39372
      functionLinenumberEnd: 39375
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_FreeValue
        - JS_ToObject
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39373,19'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:39374,5'
          Dst:             JS_FreeValue
    - functionName:    find_hashed_shape_prop
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5136
      functionLinenumberEnd: 5163
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          146
      EdgeCount:       41
      CyclomaticComplexity: 13
      functionsReached:
        - get_shape_hash
        - shape_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5141,9'
          Dst:             shape_hash
        - Src:             'quickjs.c:5142,9'
          Dst:             shape_hash
        - Src:             'quickjs.c:5143,10'
          Dst:             get_shape_hash
    - functionName:    js_dup_shape
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4902
      functionLinenumberEnd: 4904
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_shape_hash_link
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4794
      functionLinenumberEnd: 4800
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_shape_hash
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4796,9'
          Dst:             get_shape_hash
    - functionName:    add_shape_property
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5072
      functionLinenumberEnd: 5111
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          113
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - JS_DupAtom
        - get_shape_prop
        - js_shape_hash_link
        - js_shape_hash_unlink
        - resize_properties
        - shape_hash
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5081,9'
          Dst:             js_shape_hash_unlink
        - Src:             'quickjs.c:5082,37'
          Dst:             shape_hash
        - Src:             'quickjs.c:5082,26'
          Dst:             shape_hash
        - Src:             'quickjs.c:5086,13'
          Dst:             resize_properties
        - Src:             'quickjs.c:5090,17'
          Dst:             js_shape_hash_link
        - Src:             'quickjs.c:5097,9'
          Dst:             js_shape_hash_link
        - Src:             'quickjs.c:5101,12'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:5103,16'
          Dst:             JS_DupAtom
    - functionName:    shape_hash
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4748
      functionLinenumberEnd: 4749
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_GetPrototypePrimitive
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7595
      functionLinenumberEnd: 7622
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    call_setter
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9008
      functionLinenumberEnd: 9029
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          72
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - JS_CallFree
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_ThrowTypeError
        - is_strict_mode
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:9013,16'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:9014,15'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:9015,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9016,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:9018,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9021,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9023,48'
          Dst:             is_strict_mode
        - Src:             'quickjs.c:9024,13'
          Dst:             JS_ThrowTypeError
    - functionName:    JS_GetScriptOrModuleName
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30274
      functionLinenumberEnd: 30306
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          99
      EdgeCount:       30
      CyclomaticComplexity: 10
      functionsReached:
        - JS_DupAtom
        - js_class_has_bytecode
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:30293,14'
          Dst:             js_class_has_bytecode
        - Src:             'quickjs.c:30299,20'
          Dst:             JS_DupAtom
    - functionName:    JS_NewPromiseCapability
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53086
      functionLinenumberEnd: 53087
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_new_promise_capability
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:53087,12'
          Dst:             js_new_promise_capability
    - functionName:    js_dynamic_import_job
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30457
      functionLinenumberEnd: 30490
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          76
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_Call
        - JS_FreeCString
        - JS_FreeValue
        - JS_GetException
        - JS_IsString
        - JS_LoadModuleInternal
        - JS_ThrowTypeError
        - JS_ToCString
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:30465,10'
          Dst:             JS_IsString
        - Src:             'quickjs.c:30466,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:30469,16'
          Dst:             JS_ToCString
        - Src:             'quickjs.c:30473,16'
          Dst:             JS_ToCString
        - Src:             'quickjs.c:30477,5'
          Dst:             JS_LoadModuleInternal
        - Src:             'quickjs.c:30479,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:30480,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:30483,11'
          Dst:             JS_GetException
        - Src:             'quickjs.c:30484,11'
          Dst:             JS_Call
        - Src:             'quickjs.c:30486,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30487,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30488,5'
          Dst:             JS_FreeCString
    - functionName:    JS_EnqueueJob
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1876
      functionLinenumberEnd: 1877
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_EnqueueJob2
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1877,12'
          Dst:             JS_EnqueueJob2
    - functionName:    JS_GetException
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6965
      functionLinenumberEnd: 6971
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    20
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_ToCString
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 748
      functionLinenumberEnd: 749
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_ToCStringLen2
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             './quickjs.h:749,12'
          Dst:             JS_ToCStringLen2
    - functionName:    JS_LoadModuleInternal
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30396
      functionLinenumberEnd: 30436
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          104
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_Call
        - JS_EvalFunction
        - JS_FreeValue
        - JS_GetException
        - JS_IsException
        - JS_NewCFunctionData
        - JS_NewModuleValue
        - js_free_modules
        - js_host_resolve_imported_module
        - js_load_module_fulfilled
        - js_load_module_rejected
        - js_promise_then
        - js_resolve_module
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:30402,9'
          Dst:             js_host_resolve_imported_module
        - Src:             'quickjs.c:30406,9'
          Dst:             js_resolve_module
        - Src:             'quickjs.c:30407,9'
          Dst:             js_free_modules
        - Src:             'quickjs.c:30412,16'
          Dst:             JS_NewModuleValue
        - Src:             'quickjs.c:30413,24'
          Dst:             JS_EvalFunction
        - Src:             'quickjs.c:30414,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:30416,15'
          Dst:             JS_GetException
        - Src:             'quickjs.c:30417,15'
          Dst:             JS_Call
        - Src:             'quickjs.c:30419,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30420,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30424,16'
          Dst:             JS_NewModuleValue
        - Src:             'quickjs.c:30428,35'
          Dst:             JS_NewCFunctionData
        - Src:             'quickjs.c:30428,35'
          Dst:             js_load_module_fulfilled
        - Src:             'quickjs.c:30429,35'
          Dst:             JS_NewCFunctionData
        - Src:             'quickjs.c:30429,35'
          Dst:             js_load_module_rejected
        - Src:             'quickjs.c:30430,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30431,11'
          Dst:             js_promise_then
        - Src:             'quickjs.c:30432,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30433,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30434,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30435,5'
          Dst:             JS_FreeValue
    - functionName:    js_host_resolve_imported_module
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29435
      functionLinenumberEnd: 29481
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          94
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - JS_FreeAtom
        - JS_NewAtom
        - JS_ThrowReferenceError
        - js_default_module_normalize_name
        - js_find_loaded_module
        - js_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:29442,17'
          Dst:             js_default_module_normalize_name
        - Src:             'quickjs.c:29450,19'
          Dst:             JS_NewAtom
        - Src:             'quickjs.c:29452,9'
          Dst:             js_free
        - Src:             'quickjs.c:29457,9'
          Dst:             js_find_loaded_module
        - Src:             'quickjs.c:29459,9'
          Dst:             js_free
        - Src:             'quickjs.c:29460,9'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:29464,5'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:29469,9'
          Dst:             JS_ThrowReferenceError
        - Src:             'quickjs.c:29471,9'
          Dst:             js_free
        - Src:             'quickjs.c:29479,5'
          Dst:             js_free
    - functionName:    js_resolve_module
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29945
      functionLinenumberEnd: 29973
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          75
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - js_host_resolve_imported_module_atom
        - js_resolve_module
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:29961,14'
          Dst:             js_host_resolve_imported_module_atom
        - Src:             'quickjs.c:29969,13'
          Dst:             js_resolve_module
    - functionName:    JS_NewModuleValue
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30349
      functionLinenumberEnd: 30350
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:30350,12'
          Dst:             JS_DupValue
    - functionName:    JS_EvalFunction
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36597
      functionLinenumberEnd: 36598
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_EvalFunctionInternal
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:36598,12'
          Dst:             JS_EvalFunctionInternal
    - functionName:    js_load_module_fulfilled
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30373
      functionLinenumberEnd: 30390
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_Call
        - JS_FreeValue
        - JS_GetException
        - JS_GetModuleNamespace
        - JS_IsException
        - js_load_module_rejected
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:30379,10'
          Dst:             JS_GetModuleNamespace
        - Src:             'quickjs.c:30380,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:30381,23'
          Dst:             JS_GetException
        - Src:             'quickjs.c:30382,9'
          Dst:             js_load_module_rejected
        - Src:             'quickjs.c:30385,11'
          Dst:             JS_Call
        - Src:             'quickjs.c:30387,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30388,5'
          Dst:             JS_FreeValue
    - functionName:    JS_NewCFunctionData
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5649
      functionLinenumberEnd: 5673
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          92
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_NewObjectProtoClass
        - JS_SetOpaque
        - js_function_set_properties
        - js_malloc
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5654,16'
          Dst:             JS_NewObjectProtoClass
        - Src:             'quickjs.c:5656,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:5658,9'
          Dst:             js_malloc
        - Src:             'quickjs.c:5660,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:5668,22'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:5669,5'
          Dst:             JS_SetOpaque
        - Src:             'quickjs.c:5670,5'
          Dst:             js_function_set_properties
    - functionName:    js_load_module_rejected
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30355
      functionLinenumberEnd: 30369
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_Call
        - JS_FreeValue
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:30365,11'
          Dst:             JS_Call
        - Src:             'quickjs.c:30367,5'
          Dst:             JS_FreeValue
    - functionName:    js_promise_then
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53552
      functionLinenumberEnd: 53577
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          76
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - JS_FreeValue
        - JS_GetOpaque2
        - JS_IsException
        - JS_SpeciesConstructor
        - js_new_promise_capability
        - perform_promise_then
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:53557,9'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:53561,12'
          Dst:             JS_SpeciesConstructor
        - Src:             'quickjs.c:53562,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53564,22'
          Dst:             js_new_promise_capability
        - Src:             'quickjs.c:53565,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53566,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53568,11'
          Dst:             perform_promise_then
        - Src:             'quickjs.c:53571,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53571,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53573,9'
          Dst:             JS_FreeValue
    - functionName:    JS_SpeciesConstructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40251
      functionLinenumberEnd: 40277
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          110
      EdgeCount:       29
      CyclomaticComplexity: 10
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsConstructor
        - JS_IsException
        - JS_IsNull
        - JS_IsObject
        - JS_IsUndefined
        - JS_ThrowTypeErrorNotAConstructor
        - JS_ThrowTypeErrorNotAnObject
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:40254,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:40255,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:40256,12'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:40257,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40259,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:40260,16'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:40261,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:40262,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:40263,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:40265,15'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:40266,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:40267,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40269,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:40269,36'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:40270,16'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:40271,10'
          Dst:             JS_IsConstructor
        - Src:             'quickjs.c:40272,9'
          Dst:             JS_ThrowTypeErrorNotAConstructor
        - Src:             'quickjs.c:40273,9'
          Dst:             JS_FreeValue
    - functionName:    js_new_promise_capability
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53052
      functionLinenumberEnd: 53083
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          123
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - JS_CallConstructor
        - JS_DupValue
        - JS_FreeValue
        - JS_GetOpaque
        - JS_IsException
        - JS_IsUndefined
        - check_function
        - js_promise_constructor
        - js_promise_executor_new
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:53057,16'
          Dst:             js_promise_executor_new
        - Src:             'quickjs.c:53058,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53061,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:53062,26'
          Dst:             js_promise_constructor
        - Src:             'quickjs.c:53065,26'
          Dst:             JS_CallConstructor
        - Src:             'quickjs.c:53068,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53070,9'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:53072,13'
          Dst:             check_function
        - Src:             'quickjs.c:53072,13'
          Dst:             check_function
        - Src:             'quickjs.c:53076,30'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:53076,30'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:53077,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53080,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53081,5'
          Dst:             JS_FreeValue
    - functionName:    perform_promise_then
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53499
      functionLinenumberEnd: 53548
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          221
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - JS_DupValue
        - JS_EnqueueJob
        - JS_GetOpaque
        - JS_IsFunction
        - js_mallocz
        - list_add_tail
        - promise_reaction_data_free
        - promise_reaction_job
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:53500,24'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:53508,14'
          Dst:             js_mallocz
        - Src:             'quickjs.c:53515,38'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:53515,38'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:53517,14'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:53511,17'
          Dst:             promise_reaction_data_free
        - Src:             'quickjs.c:53519,23'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:53508,14'
          Dst:             js_mallocz
        - Src:             'quickjs.c:53515,38'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:53515,38'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:53517,14'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:53519,23'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:53525,13'
          Dst:             list_add_tail
        - Src:             'quickjs.c:53525,13'
          Dst:             list_add_tail
        - Src:             'quickjs.c:53542,9'
          Dst:             JS_EnqueueJob
        - Src:             'quickjs.c:53542,9'
          Dst:             promise_reaction_job
        - Src:             'quickjs.c:53544,13'
          Dst:             promise_reaction_data_free
        - Src:             'quickjs.c:53544,13'
          Dst:             promise_reaction_data_free
    - functionName:    JS_GetOpaque
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10631
      functionLinenumberEnd: 10639
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    38
      BranchProfiles:  []
      Callsites:       []
    - functionName:    promise_reaction_data_free
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52683
      functionLinenumberEnd: 52688
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_FreeValueRT
        - js_free_rt
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:52684,5'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:52685,5'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:52686,5'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:52687,5'
          Dst:             js_free_rt
    - functionName:    promise_reaction_job
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52692
      functionLinenumberEnd: 52730
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          129
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - JS_Call
        - JS_DupValue
        - JS_FreeValue
        - JS_GetException
        - JS_IsException
        - JS_IsUndefined
        - JS_Throw
        - JS_ToBool
        - __assert_fail
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:52697,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:52699,17'
          Dst:             JS_ToBool
        - Src:             'quickjs.c:52705,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:52707,33'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:52707,19'
          Dst:             JS_Throw
        - Src:             'quickjs.c:52709,19'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:52712,15'
          Dst:             JS_Call
        - Src:             'quickjs.c:52714,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52716,15'
          Dst:             JS_GetException
        - Src:             'quickjs.c:52721,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:52722,16'
          Dst:             JS_Call
        - Src:             'quickjs.c:52727,5'
          Dst:             JS_FreeValue
    - functionName:    JS_ToBool
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10825
      functionLinenumberEnd: 10826
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
        - JS_ToBoolFree
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:10826,31'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:10826,12'
          Dst:             JS_ToBoolFree
    - functionName:    js_promise_executor_new
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53040
      functionLinenumberEnd: 53047
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_NewCFunctionData
        - js_promise_executor
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:53045,12'
          Dst:             JS_NewCFunctionData
        - Src:             'quickjs.c:53045,12'
          Dst:             js_promise_executor
    - functionName:    js_promise_constructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52978
      functionLinenumberEnd: 53022
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          137
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - JS_Call
        - JS_FreeValue
        - JS_GetException
        - JS_IsException
        - JS_SetOpaque
        - check_function
        - init_list_head
        - js_create_from_ctor
        - js_create_resolving_functions
        - js_mallocz
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:52986,9'
          Dst:             check_function
        - Src:             'quickjs.c:52988,11'
          Dst:             js_create_from_ctor
        - Src:             'quickjs.c:52989,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52991,9'
          Dst:             js_mallocz
        - Src:             'quickjs.c:52997,9'
          Dst:             init_list_head
        - Src:             'quickjs.c:52997,9'
          Dst:             init_list_head
        - Src:             'quickjs.c:52999,5'
          Dst:             JS_SetOpaque
        - Src:             'quickjs.c:53000,9'
          Dst:             js_create_resolving_functions
        - Src:             'quickjs.c:53002,11'
          Dst:             JS_Call
        - Src:             'quickjs.c:53003,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53005,17'
          Dst:             JS_GetException
        - Src:             'quickjs.c:53006,16'
          Dst:             JS_Call
        - Src:             'quickjs.c:53007,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53008,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53010,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53012,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53013,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53014,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53017,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53018,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53020,5'
          Dst:             JS_FreeValue
    - functionName:    JS_CallConstructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20292
      functionLinenumberEnd: 20293
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_CallConstructorInternal
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20293,12'
          Dst:             JS_CallConstructorInternal
    - functionName:    check_function
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38933
      functionLinenumberEnd: 38938
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          25
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_IsFunction
        - JS_ThrowTypeError
      functionUses:    23
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:38934,9'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:38936,5'
          Dst:             JS_ThrowTypeError
    - functionName:    js_create_from_ctor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20209
      functionLinenumberEnd: 20230
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          78
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_GetFunctionRealm
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsObject
        - JS_IsUndefined
        - JS_NewObjectProtoClass
      functionUses:    24
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20213,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:20216,17'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:20217,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:20219,14'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:20220,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20221,21'
          Dst:             JS_GetFunctionRealm
        - Src:             'quickjs.c:0,0'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:20227,11'
          Dst:             JS_NewObjectProtoClass
        - Src:             'quickjs.c:20228,5'
          Dst:             JS_FreeValue
    - functionName:    js_create_resolving_functions
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52826
      functionLinenumberEnd: 52862
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          113
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_NewObjectProtoClass
        - JS_SetOpaque
        - js_function_set_properties
        - js_malloc
        - js_promise_resolve_function_free_resolved
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:52832,10'
          Dst:             js_malloc
        - Src:             'quickjs.c:52839,15'
          Dst:             JS_NewObjectProtoClass
        - Src:             'quickjs.c:52841,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52843,13'
          Dst:             js_malloc
        - Src:             'quickjs.c:52845,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52845,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52849,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52855,22'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:52856,9'
          Dst:             JS_SetOpaque
        - Src:             'quickjs.c:52857,9'
          Dst:             js_function_set_properties
        - Src:             'quickjs.c:52839,15'
          Dst:             JS_NewObjectProtoClass
        - Src:             'quickjs.c:52841,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52843,13'
          Dst:             js_malloc
        - Src:             'quickjs.c:52855,22'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:52856,9'
          Dst:             JS_SetOpaque
        - Src:             'quickjs.c:52857,9'
          Dst:             js_function_set_properties
        - Src:             'quickjs.c:52860,5'
          Dst:             js_promise_resolve_function_free_resolved
    - functionName:    js_promise_resolve_function_free_resolved
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52816
      functionLinenumberEnd: 52820
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          26
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - js_free_rt
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:52818,9'
          Dst:             js_free_rt
    - functionName:    JS_GetFunctionRealm
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20160
      functionLinenumberEnd: 20205
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          102
      EdgeCount:       26
      CyclomaticComplexity: 5
      functionsReached:
        - JS_ThrowTypeErrorRevokedProxy
      functionUses:    4
      BranchProfiles:
        - Branch String:   'quickjs.c:20167,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:20187,17'
          Dst:             JS_ThrowTypeErrorRevokedProxy
    - functionName:    JS_ThrowTypeErrorRevokedProxy
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49905
      functionLinenumberEnd: 49906
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_ThrowTypeError
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:49906,12'
          Dst:             JS_ThrowTypeError
    - functionName:    js_promise_executor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53028
      functionLinenumberEnd: 53037
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_DupValue
        - JS_IsUndefined
        - JS_ThrowTypeError
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:53032,14'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:53033,20'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:53034,24'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:53032,14'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:53034,24'
          Dst:             JS_DupValue
    - functionName:    JS_ThrowTypeErrorNotAConstructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7400
      functionLinenumberEnd: 7412
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          34
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeCString
        - JS_IsFunction
        - JS_ThrowTypeError
        - get_prop_string
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7402,10'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:7404,12'
          Dst:             get_prop_string
        - Src:             'quickjs.c:7407,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:7409,5'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:7410,5'
          Dst:             JS_FreeCString
    - functionName:    JS_EvalFunctionInternal
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36565
      functionLinenumberEnd: 36594
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          86
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - JS_CallFree
        - JS_FreeValue
        - JS_IsException
        - JS_ThrowTypeError
        - js_closure
        - js_create_module_function
        - js_evaluate_module
        - js_link_module
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:36571,19'
          Dst:             js_closure
        - Src:             'quickjs.c:36572,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:36574,19'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:36579,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:36580,13'
          Dst:             js_create_module_function
        - Src:             'quickjs.c:36582,13'
          Dst:             js_link_module
        - Src:             'quickjs.c:36584,19'
          Dst:             js_evaluate_module
        - Src:             'quickjs.c:36585,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:36590,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:36591,19'
          Dst:             JS_ThrowTypeError
    - functionName:    js_create_module_function
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30000
      functionLinenumberEnd: 30036
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          129
      EdgeCount:       38
      CyclomaticComplexity: 12
      functionsReached:
        - js_create_module_bytecode_function
        - js_create_module_function
        - js_create_var_ref
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:30015,27'
          Dst:             js_create_var_ref
        - Src:             'quickjs.c:30022,13'
          Dst:             js_create_module_bytecode_function
        - Src:             'quickjs.c:30031,13'
          Dst:             js_create_module_function
    - functionName:    js_link_module
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30241
      functionLinenumberEnd: 30269
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          126
      EdgeCount:       38
      CyclomaticComplexity: 10
      functionsReached:
        - __assert_fail
        - js_inner_module_linking
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:30250,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30255,9'
          Dst:             js_inner_module_linking
        - Src:             'quickjs.c:30258,13'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30264,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30265,5'
          Dst:             __assert_fail
    - functionName:    js_evaluate_module
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30955
      functionLinenumberEnd: 31011
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         45
      ICount:          267
      EdgeCount:       54
      CyclomaticComplexity: 11
      functionsReached:
        - JS_Call
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_IsUndefined
        - JS_NewPromiseCapability
        - __assert_fail
        - js_inner_module_evaluation
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:30962,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30970,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:30971,16'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:30972,18'
          Dst:             JS_NewPromiseCapability
        - Src:             'quickjs.c:30973,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:30977,9'
          Dst:             js_inner_module_evaluation
        - Src:             'quickjs.c:30980,13'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30983,34'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:30987,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30988,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30989,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30990,19'
          Dst:             JS_Call
        - Src:             'quickjs.c:30992,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30997,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30999,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:31002,13'
          Dst:             __assert_fail
        - Src:             'quickjs.c:31004,23'
          Dst:             JS_Call
        - Src:             'quickjs.c:31006,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:31008,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:31010,12'
          Dst:             JS_DupValue
    - functionName:    js_inner_module_evaluation
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30845
      functionLinenumberEnd: 30950
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         70
      ICount:          394
      EdgeCount:       91
      CyclomaticComplexity: 23
      functionsReached:
        - JS_DupValue
        - JS_GetException
        - JS_ThrowStackOverflow
        - __assert_fail
        - js_check_stack_overflow
        - js_execute_async_module
        - js_execute_sync_module
        - js_inner_module_evaluation
        - js_resize_array
        - min_int
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:30853,9'
          Dst:             js_check_stack_overflow
        - Src:             'quickjs.c:30854,9'
          Dst:             JS_ThrowStackOverflow
        - Src:             'quickjs.c:30855,19'
          Dst:             JS_GetException
        - Src:             'quickjs.c:30862,23'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:30873,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30887,17'
          Dst:             js_inner_module_evaluation
        - Src:             'quickjs.c:30890,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30894,37'
          Dst:             min_int
        - Src:             'quickjs.c:30898,13'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30901,27'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:30907,17'
          Dst:             js_resize_array
        - Src:             'quickjs.c:30908,27'
          Dst:             JS_GetException
        - Src:             'quickjs.c:30916,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30921,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30925,9'
          Dst:             js_execute_async_module
        - Src:             'quickjs.c:30927,13'
          Dst:             js_execute_sync_module
        - Src:             'quickjs.c:30931,5'
          Dst:             __assert_fail
    - functionName:    js_execute_async_module
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30782
      functionLinenumberEnd: 30801
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_NewCFunctionData
        - JS_NewModuleValue
        - js_async_function_call
        - js_async_module_execution_fulfilled
        - js_async_module_execution_rejected
        - js_promise_then
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:30788,15'
          Dst:             js_async_function_call
        - Src:             'quickjs.c:30789,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:30791,13'
          Dst:             JS_NewModuleValue
        - Src:             'quickjs.c:30792,24'
          Dst:             JS_NewCFunctionData
        - Src:             'quickjs.c:30792,24'
          Dst:             js_async_module_execution_fulfilled
        - Src:             'quickjs.c:30793,24'
          Dst:             JS_NewCFunctionData
        - Src:             'quickjs.c:30793,24'
          Dst:             js_async_module_execution_rejected
        - Src:             'quickjs.c:30794,15'
          Dst:             js_promise_then
        - Src:             'quickjs.c:30795,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30796,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30797,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30798,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30799,5'
          Dst:             JS_FreeValue
    - functionName:    js_execute_sync_module
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30806
      functionLinenumberEnd: 30838
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          87
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - JS_FreeValue
        - JS_GetException
        - JS_IsException
        - JS_PromiseResult
        - JS_PromiseState
        - JS_ThrowTypeError
        - js_async_function_call
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:30818,19'
          Dst:             js_async_function_call
        - Src:             'quickjs.c:30819,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:30821,17'
          Dst:             JS_PromiseState
        - Src:             'quickjs.c:30823,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30825,23'
          Dst:             JS_PromiseResult
        - Src:             'quickjs.c:30826,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30829,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30830,13'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:30832,23'
          Dst:             JS_GetException
    - functionName:    js_async_function_call
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20746
      functionLinenumberEnd: 20765
      functionDepth:   0
      returnType:      'N/A'
      argCount:        8
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          49
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_IsException
        - JS_NewPromiseCapability
        - async_func_free
        - async_func_init
        - js_async_function_resume
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20750,9'
          Dst:             async_func_init
        - Src:             'quickjs.c:20754,15'
          Dst:             JS_NewPromiseCapability
        - Src:             'quickjs.c:20755,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:20756,9'
          Dst:             async_func_free
        - Src:             'quickjs.c:20760,5'
          Dst:             js_async_function_resume
        - Src:             'quickjs.c:20762,5'
          Dst:             async_func_free
    - functionName:    JS_PromiseState
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52663
      functionLinenumberEnd: 52668
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          24
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_GetOpaque
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:52664,24'
          Dst:             JS_GetOpaque
    - functionName:    JS_PromiseResult
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52671
      functionLinenumberEnd: 52676
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_DupValue
        - JS_GetOpaque
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:52672,24'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:52675,12'
          Dst:             JS_DupValue
    - functionName:    async_func_init
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20320
      functionLinenumberEnd: 20359
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          226
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - JS_DupValue
        - add_gc_object
        - js_malloc
        - max_int
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20329,19'
          Dst:             max_int
        - Src:             'quickjs.c:20330,9'
          Dst:             js_malloc
        - Src:             'quickjs.c:20335,5'
          Dst:             add_gc_object
        - Src:             'quickjs.c:20341,20'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:20342,19'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:20351,26'
          Dst:             JS_DupValue
    - functionName:    js_async_function_resume
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20663
      functionLinenumberEnd: 20715
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          151
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - JS_Call
        - JS_FreeValue
        - JS_GetException
        - JS_IsException
        - async_func_resume
        - js_async_function_resolve_create
        - js_promise_resolve
        - perform_promise_then
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20666,16'
          Dst:             async_func_resume
        - Src:             'quickjs.c:20668,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:20671,21'
          Dst:             JS_GetException
        - Src:             'quickjs.c:20672,20'
          Dst:             JS_Call
        - Src:             'quickjs.c:20674,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20675,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20678,20'
          Dst:             JS_Call
        - Src:             'quickjs.c:20680,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20681,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20691,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20692,19'
          Dst:             js_promise_resolve
        - Src:             'quickjs.c:20694,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20695,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:20697,13'
          Dst:             js_async_function_resolve_create
        - Src:             'quickjs.c:20706,15'
          Dst:             perform_promise_then
        - Src:             'quickjs.c:20709,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20711,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20711,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20698,13'
          Dst:             JS_FreeValue
    - functionName:    async_func_resume
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20376
      functionLinenumberEnd: 20410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          116
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - JS_CallInternal
        - JS_IsException
        - JS_IsUndefined
        - JS_ThrowStackOverflow
        - __assert_fail
        - async_func_free_frame
        - close_var_refs
        - js_check_stack_overflow
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20381,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:20382,9'
          Dst:             js_check_stack_overflow
        - Src:             'quickjs.c:20383,15'
          Dst:             JS_ThrowStackOverflow
        - Src:             'quickjs.c:20387,15'
          Dst:             JS_CallInternal
        - Src:             'quickjs.c:20390,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:20390,32'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:20397,13'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:20405,9'
          Dst:             close_var_refs
        - Src:             'quickjs.c:20407,9'
          Dst:             async_func_free_frame
    - functionName:    js_promise_resolve
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53092
      functionLinenumberEnd: 53121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          115
      EdgeCount:       26
      CyclomaticComplexity: 9
      functionsReached:
        - JS_Call
        - JS_DupValue
        - JS_FreeValue
        - JS_GetOpaque
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsObject
        - JS_ThrowTypeErrorNotAnObject
        - js_new_promise_capability
        - js_same_value
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:53096,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:53097,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:53098,23'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:53101,16'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:53102,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53104,19'
          Dst:             js_same_value
        - Src:             'quickjs.c:53105,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53107,20'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:53109,22'
          Dst:             js_new_promise_capability
        - Src:             'quickjs.c:53110,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53112,11'
          Dst:             JS_Call
        - Src:             'quickjs.c:53113,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53114,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53115,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53116,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53119,5'
          Dst:             JS_FreeValue
    - functionName:    js_async_function_resolve_create
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20642
      functionLinenumberEnd: 20660
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          66
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_NewObjectProtoClass
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20648,13'
          Dst:             JS_NewObjectProtoClass
        - Src:             'quickjs.c:20650,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:20652,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20648,13'
          Dst:             JS_NewObjectProtoClass
        - Src:             'quickjs.c:20650,13'
          Dst:             JS_IsException
    - functionName:    js_async_module_execution_fulfilled
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30722
      functionLinenumberEnd: 30779
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          172
      EdgeCount:       39
      CyclomaticComplexity: 9
      functionsReached:
        - JS_FreeValue
        - JS_NewModuleValue
        - __assert_fail
        - exec_module_list_cmp
        - gather_available_ancestors
        - js_async_module_execution_rejected
        - js_execute_async_module
        - js_execute_sync_module
        - js_free
        - js_set_module_evaluated
        - rqsort
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:30731,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30734,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30735,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30736,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30738,5'
          Dst:             js_set_module_evaluated
        - Src:             'quickjs.c:30744,9'
          Dst:             gather_available_ancestors
        - Src:             'quickjs.c:30750,5'
          Dst:             rqsort
        - Src:             'quickjs.c:30750,5'
          Dst:             exec_module_list_cmp
        - Src:             'quickjs.c:30759,13'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30761,13'
          Dst:             js_execute_async_module
        - Src:             'quickjs.c:30764,17'
          Dst:             js_execute_sync_module
        - Src:             'quickjs.c:30765,33'
          Dst:             JS_NewModuleValue
        - Src:             'quickjs.c:30766,17'
          Dst:             js_async_module_execution_rejected
        - Src:             'quickjs.c:30769,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30770,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30773,17'
          Dst:             js_set_module_evaluated
        - Src:             'quickjs.c:0,0'
          Dst:             js_free
    - functionName:    js_async_module_execution_rejected
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30677
      functionLinenumberEnd: 30718
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          163
      EdgeCount:       31
      CyclomaticComplexity: 7
      functionsReached:
        - JS_Call
        - JS_DupValue
        - JS_FreeValue
        - JS_IsUndefined
        - JS_NewModuleValue
        - JS_ThrowStackOverflow
        - __assert_fail
        - js_async_module_execution_rejected
        - js_check_stack_overflow
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:30685,9'
          Dst:             js_check_stack_overflow
        - Src:             'quickjs.c:30686,16'
          Dst:             JS_ThrowStackOverflow
        - Src:             'quickjs.c:30689,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30693,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30694,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30695,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30698,30'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:30702,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:30704,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30705,19'
          Dst:             JS_Call
        - Src:             'quickjs.c:30707,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30712,25'
          Dst:             JS_NewModuleValue
        - Src:             'quickjs.c:30713,9'
          Dst:             js_async_module_execution_rejected
        - Src:             'quickjs.c:30715,9'
          Dst:             JS_FreeValue
    - functionName:    js_set_module_evaluated
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30593
      functionLinenumberEnd: 30603
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          55
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - JS_Call
        - JS_FreeValue
        - JS_IsUndefined
        - __assert_fail
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:30595,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:30597,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30599,19'
          Dst:             JS_Call
        - Src:             'quickjs.c:30601,9'
          Dst:             JS_FreeValue
    - functionName:    gather_available_ancestors
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30624
      functionLinenumberEnd: 30653
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          160
      EdgeCount:       41
      CyclomaticComplexity: 11
      functionsReached:
        - JS_ThrowStackOverflow
        - __assert_fail
        - find_in_exec_module_list
        - gather_available_ancestors
        - js_check_stack_overflow
        - js_resize_array
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:30627,9'
          Dst:             js_check_stack_overflow
        - Src:             'quickjs.c:30628,9'
          Dst:             JS_ThrowStackOverflow
        - Src:             'quickjs.c:30633,14'
          Dst:             find_in_exec_module_list
        - Src:             'quickjs.c:30635,13'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30636,13'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30637,13'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30638,13'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30641,21'
          Dst:             js_resize_array
        - Src:             'quickjs.c:30646,25'
          Dst:             gather_available_ancestors
    - functionName:    exec_module_list_cmp
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30656
      functionLinenumberEnd: 30659
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    find_in_exec_module_list
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30613
      functionLinenumberEnd: 30620
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          37
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_inner_module_linking
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30043
      functionLinenumberEnd: 30236
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         94
      ICount:          512
      EdgeCount:       127
      CyclomaticComplexity: 35
      functionsReached:
        - JS_Call
        - JS_FreeValue
        - JS_GetModuleNamespace
        - JS_IsException
        - JS_ThrowStackOverflow
        - __assert_fail
        - js_check_stack_overflow
        - js_create_var_ref
        - js_inner_module_linking
        - js_resolve_export
        - js_resolve_export_throw_error
        - min_int
        - set_value
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:30052,9'
          Dst:             js_check_stack_overflow
        - Src:             'quickjs.c:30053,9'
          Dst:             JS_ThrowStackOverflow
        - Src:             'quickjs.c:30070,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30082,17'
          Dst:             js_inner_module_linking
        - Src:             'quickjs.c:30085,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:30090,37'
          Dst:             min_int
        - Src:             'quickjs.c:30110,19'
          Dst:             js_resolve_export
        - Src:             'quickjs.c:30112,17'
          Dst:             js_resolve_export_throw_error
        - Src:             'quickjs.c:30147,23'
          Dst:             JS_GetModuleNamespace
        - Src:             'quickjs.c:30148,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:30150,17'
          Dst:             set_value
        - Src:             'quickjs.c:30160,23'
          Dst:             js_resolve_export
        - Src:             'quickjs.c:30163,21'
          Dst:             js_resolve_export_throw_error
        - Src:             'quickjs.c:30171,27'
          Dst:             JS_GetModuleNamespace
        - Src:             'quickjs.c:30172,25'
          Dst:             JS_IsException
        - Src:             'quickjs.c:30174,31'
          Dst:             js_create_var_ref
        - Src:             'quickjs.c:30176,25'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30179,21'
          Dst:             set_value
        - Src:             'quickjs.c:30212,19'
          Dst:             JS_Call
        - Src:             'quickjs.c:30213,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:30215,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30218,5'
          Dst:             __assert_fail
    - functionName:    js_create_module_bytecode_function
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29977
      functionLinenumberEnd: 29996
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          52
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_NewObjectProtoClass
        - js_closure2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:29982,16'
          Dst:             JS_NewObjectProtoClass
        - Src:             'quickjs.c:29985,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:29989,16'
          Dst:             js_closure2
        - Src:             'quickjs.c:29990,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:29992,9'
          Dst:             JS_FreeValue
    - functionName:    js_host_resolve_imported_module_atom
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29487
      functionLinenumberEnd: 29503
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          36
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_AtomToCString
        - JS_FreeCString
        - js_host_resolve_imported_module
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:29491,18'
          Dst:             JS_AtomToCString
        - Src:             'quickjs.c:29494,13'
          Dst:             JS_AtomToCString
        - Src:             'quickjs.c:29499,9'
          Dst:             js_host_resolve_imported_module
        - Src:             'quickjs.c:29500,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:0,0'
          Dst:             JS_FreeCString
    - functionName:    js_default_module_normalize_name
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29360
      functionLinenumberEnd: 29414
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          169
      EdgeCount:       53
      CyclomaticComplexity: 16
      functionsReached:
        - js_malloc
        - js_strdup
        - pstrcat
        - strcmp
        - strlen
        - strrchr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:29368,16'
          Dst:             js_strdup
        - Src:             'quickjs.c:29371,9'
          Dst:             strrchr
        - Src:             'quickjs.c:29377,17'
          Dst:             strlen
        - Src:             'quickjs.c:29378,16'
          Dst:             js_malloc
        - Src:             'quickjs.c:29394,17'
          Dst:             strrchr
        - Src:             'quickjs.c:29399,18'
          Dst:             strcmp
        - Src:             'quickjs.c:29399,37'
          Dst:             strcmp
        - Src:             'quickjs.c:29410,9'
          Dst:             pstrcat
        - Src:             'quickjs.c:29411,5'
          Dst:             pstrcat
    - functionName:    js_find_loaded_module
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29417
      functionLinenumberEnd: 29428
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          38
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_strdup
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1488
      functionLinenumberEnd: 1489
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_strndup
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1489,33'
          Dst:             strlen
        - Src:             'quickjs.c:1489,12'
          Dst:             js_strndup
    - functionName:    strrchr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strcmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    16
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_strndup
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1477
      functionLinenumberEnd: 1484
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          26
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - js_malloc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1479,11'
          Dst:             js_malloc
    - functionName:    js_get_length64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40553
      functionLinenumberEnd: 40561
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_ToLengthFree
      functionUses:    32
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:40555,15'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:40556,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40560,12'
          Dst:             JS_ToLengthFree
    - functionName:    max_uint32
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          16
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_ToLengthFree
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13112
      functionLinenumberEnd: 13115
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_FreeValue
        - JS_ToInt64Clamp
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:13113,15'
          Dst:             JS_ToInt64Clamp
        - Src:             'quickjs.c:13114,5'
          Dst:             JS_FreeValue
    - functionName:    JS_ToInt64Clamp
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12840
      functionLinenumberEnd: 12850
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          58
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - JS_DupValue
        - JS_ToInt64SatFree
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:12841,44'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:12841,15'
          Dst:             JS_ToInt64SatFree
    - functionName:    JS_ToInt64SatFree
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12793
      functionLinenumberEnd: 12831
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          82
      EdgeCount:       24
      CyclomaticComplexity: 5
      functionsReached:
        - JS_IsException
        - JS_ToNumberFree
      functionUses:    2
      BranchProfiles:
        - Branch String:   'quickjs.c:12798,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:12824,15'
          Dst:             JS_ToNumberFree
        - Src:             'quickjs.c:12825,13'
          Dst:             JS_IsException
    - functionName:    JS_EvalInternal
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36721
      functionLinenumberEnd: 36738
      functionDepth:   0
      returnType:      'N/A'
      argCount:        8
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          76
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_ThrowTypeError
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:36727,16'
          Dst:             JS_ThrowTypeError
    - functionName:    __JS_ThrowSyntaxErrorAtom
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7322
      functionLinenumberEnd: 7326
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_AtomGetStr
        - JS_ThrowSyntaxError
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7325,30'
          Dst:             JS_AtomGetStr
        - Src:             'quickjs.c:7324,12'
          Dst:             JS_ThrowSyntaxError
    - functionName:    JS_NewArray
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5441
      functionLinenumberEnd: 5442
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_NewObjectFromShape
        - js_dup_shape
      functionUses:    32
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5442,39'
          Dst:             js_dup_shape
        - Src:             'quickjs.c:5442,12'
          Dst:             JS_NewObjectFromShape
    - functionName:    JS_GetImportMeta
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30314
      functionLinenumberEnd: 30325
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          50
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_DupValue
        - JS_IsException
        - JS_IsUndefined
        - JS_NewObjectProto
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:30318,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:30319,15'
          Dst:             JS_NewObjectProto
        - Src:             'quickjs.c:30320,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:30324,12'
          Dst:             JS_DupValue
    - functionName:    JS_SetObjectData
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5405
      functionLinenumberEnd: 5428
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          76
      EdgeCount:       18
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_ThrowTypeError
      functionUses:    11
      BranchProfiles:
        - Branch String:   'quickjs.c:5410,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:5417,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:5424,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:5425,10'
          Dst:             JS_IsException
        - Src:             'quickjs.c:5426,9'
          Dst:             JS_ThrowTypeError
    - functionName:    __JS_AtomToValue
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3183
      functionLinenumberEnd: 3207
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          89
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - JS_DupValue
        - __JS_AtomIsTaggedInt
        - __JS_AtomToUInt32
        - __assert_fail
        - js_new_string8_len
        - u32toa
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3186,9'
          Dst:             __JS_AtomIsTaggedInt
        - Src:             'quickjs.c:3187,34'
          Dst:             __JS_AtomToUInt32
        - Src:             'quickjs.c:3187,22'
          Dst:             u32toa
        - Src:             'quickjs.c:3188,16'
          Dst:             js_new_string8_len
        - Src:             'quickjs.c:3192,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:3202,20'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:3204,20'
          Dst:             JS_DupValue
    - functionName:    js_get_stack_pointer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1639
      functionLinenumberEnd: 1640
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __js_poll_interrupts
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7464
      functionLinenumberEnd: 7474
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          41
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_ThrowInterrupted
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7469,13'
          Dst:             JS_ThrowInterrupted
    - functionName:    JS_ThrowInterrupted
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7458
      functionLinenumberEnd: 7461
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_SetUncatchableException
        - JS_ThrowInternalError
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7459,5'
          Dst:             JS_ThrowInternalError
        - Src:             'quickjs.c:7460,5'
          Dst:             JS_SetUncatchableException
    - functionName:    JS_SetUncatchableException
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10616
      functionLinenumberEnd: 10618
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_new_string_char
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3541
      functionLinenumberEnd: 3549
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - js_new_string16_len
        - js_new_string8_len
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3544,16'
          Dst:             js_new_string8_len
        - Src:             'quickjs.c:3547,16'
          Dst:             js_new_string16_len
    - functionName:    string_rope_get
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4312
      functionLinenumberEnd: 4327
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          82
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - string_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4314,16'
          Dst:             string_get
    - functionName:    js_new_string16_len
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3531
      functionLinenumberEnd: 3538
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - js_alloc_string
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3533,11'
          Dst:             js_alloc_string
    - functionName:    string_buffer_concat_value
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3846
      functionLinenumberEnd: 3874
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          85
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_ToString
        - string_buffer_concat
        - string_buffer_concat_value
        - string_buffer_set_error
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3859,17'
          Dst:             string_buffer_concat_value
        - Src:             'quickjs.c:3863,18'
          Dst:             JS_ToString
        - Src:             'quickjs.c:3864,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:3865,24'
          Dst:             string_buffer_set_error
        - Src:             'quickjs.c:3867,19'
          Dst:             string_buffer_concat
        - Src:             'quickjs.c:3868,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:3873,12'
          Dst:             string_buffer_concat
    - functionName:    get_leb128
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7001
      functionLinenumberEnd: 7017
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          111
      EdgeCount:       33
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_sleb128
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7021
      functionLinenumberEnd: 7031
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_leb128
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7024,11'
          Dst:             get_leb128
    - functionName:    find_hashed_shape_proto
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5116
      functionLinenumberEnd: 5130
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          71
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - get_shape_hash
        - shape_initial_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5120,9'
          Dst:             shape_initial_hash
        - Src:             'quickjs.c:5121,10'
          Dst:             get_shape_hash
    - functionName:    js_new_shape
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4866
      functionLinenumberEnd: 4867
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_new_shape2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4867,12'
          Dst:             js_new_shape2
    - functionName:    js_new_shape2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4845
      functionLinenumberEnd: 4863
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - js_new_shape_nohash
        - js_shape_hash_link
        - resize_shape_hash
        - shape_initial_hash
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4851,9'
          Dst:             resize_shape_hash
        - Src:             'quickjs.c:4854,10'
          Dst:             js_new_shape_nohash
        - Src:             'quickjs.c:4859,16'
          Dst:             shape_initial_hash
        - Src:             'quickjs.c:4861,5'
          Dst:             js_shape_hash_link
    - functionName:    resize_shape_hash
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4768
      functionLinenumberEnd: 4791
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          86
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - get_shape_hash
        - js_free_rt
        - js_mallocz_rt
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4774,22'
          Dst:             js_mallocz_rt
        - Src:             'quickjs.c:4781,17'
          Dst:             get_shape_hash
        - Src:             'quickjs.c:4786,5'
          Dst:             js_free_rt
    - functionName:    shape_initial_hash
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4759
      functionLinenumberEnd: 4764
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - shape_hash
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4761,9'
          Dst:             shape_hash
        - Src:             'quickjs.c:4763,13'
          Dst:             shape_hash
    - functionName:    JS_ThrowTypeErrorInvalidClass
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7450
      functionLinenumberEnd: 7455
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __JS_ThrowTypeErrorAtom
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7454,12'
          Dst:             __JS_ThrowTypeErrorAtom
    - functionName:    js_finrec_register
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60606
      functionLinenumberEnd: 60632
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          121
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - JS_DupValue
        - JS_GetOpaque2
        - JS_IsUndefined
        - JS_ThrowTypeError
        - js_malloc
        - js_same_value
        - js_weakref_is_target
        - js_weakref_new
        - list_add_tail
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:60611,11'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:60618,10'
          Dst:             js_weakref_is_target
        - Src:             'quickjs.c:60619,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:60620,9'
          Dst:             js_same_value
        - Src:             'quickjs.c:60621,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:60622,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:60622,36'
          Dst:             js_weakref_is_target
        - Src:             'quickjs.c:60623,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:60624,11'
          Dst:             js_malloc
        - Src:             'quickjs.c:60627,19'
          Dst:             js_weakref_new
        - Src:             'quickjs.c:60628,21'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:60629,18'
          Dst:             js_weakref_new
        - Src:             'quickjs.c:60630,5'
          Dst:             list_add_tail
    - functionName:    js_weakref_new
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51054
      functionLinenumberEnd: 51066
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          65
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - JS_IsUndefined
        - __assert_fail
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51061,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:51064,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:51064,9'
          Dst:             __assert_fail
    - functionName:    js_finrec_mark
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60527
      functionLinenumberEnd: 60538
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          57
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - JS_GetOpaque
        - JS_MarkValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:60528,39'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:60533,13'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:60535,9'
          Dst:             JS_MarkValue
    - functionName:    js_finrec_finalizer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60507
      functionLinenumberEnd: 60523
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          68
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeContext
        - JS_FreeValueRT
        - JS_GetOpaque
        - js_free_rt
        - js_weakref_free
        - list_del
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:60508,39'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:60513,13'
          Dst:             js_weakref_free
        - Src:             'quickjs.c:60514,13'
          Dst:             js_weakref_free
        - Src:             'quickjs.c:60515,13'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:60516,13'
          Dst:             js_free_rt
        - Src:             'quickjs.c:60518,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:60519,9'
          Dst:             JS_FreeContext
        - Src:             'quickjs.c:60520,9'
          Dst:             list_del
        - Src:             'quickjs.c:60521,9'
          Dst:             js_free_rt
    - functionName:    js_weakref_deref
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60473
      functionLinenumberEnd: 60481
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          45
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_DupValue
        - JS_GetOpaque2
        - js_weakref_is_live
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:60474,26'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:60477,9'
          Dst:             js_weakref_is_live
        - Src:             'quickjs.c:60478,16'
          Dst:             JS_DupValue
    - functionName:    js_weakref_finalizer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60427
      functionLinenumberEnd: 60434
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_GetOpaque
        - js_free_rt
        - js_weakref_free
        - list_del
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:60428,26'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:60431,5'
          Dst:             js_weakref_free
        - Src:             'quickjs.c:60432,5'
          Dst:             list_del
        - Src:             'quickjs.c:60433,5'
          Dst:             js_free_rt
    - functionName:    cpu_pause
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60112
      functionLinenumberEnd: 60114
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_atomics_get_buf
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59815
      functionLinenumberEnd: 59873
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          178
      EdgeCount:       55
      CyclomaticComplexity: 17
      functionsReached:
        - JS_ThrowRangeError
        - JS_ThrowTypeError
        - JS_ThrowTypeErrorArrayBufferOOB
        - JS_ThrowTypeErrorDetachedArrayBuffer
        - JS_ToIndex
        - typed_array_is_oob
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:59834,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:59841,13'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:59845,13'
          Dst:             JS_ThrowTypeErrorDetachedArrayBuffer
        - Src:             'quickjs.c:59851,9'
          Dst:             JS_ToIndex
        - Src:             'quickjs.c:59860,13'
          Dst:             typed_array_is_oob
        - Src:             'quickjs.c:59861,13'
          Dst:             JS_ThrowTypeErrorArrayBufferOOB
        - Src:             'quickjs.c:59866,13'
          Dst:             JS_ThrowRangeError
    - functionName:    JS_ThrowTypeErrorDetachedArrayBuffer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56271
      functionLinenumberEnd: 56272
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_ThrowTypeError
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56272,12'
          Dst:             JS_ThrowTypeError
    - functionName:    JS_ToIndex
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13095
      functionLinenumberEnd: 13106
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          48
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - JS_ThrowRangeError
        - JS_ToInt64Sat
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:13097,9'
          Dst:             JS_ToInt64Sat
        - Src:             'quickjs.c:13100,9'
          Dst:             JS_ThrowRangeError
    - functionName:    JS_ToInt64Sat
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12834
      functionLinenumberEnd: 12835
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
        - JS_ToInt64SatFree
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:12835,41'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:12835,12'
          Dst:             JS_ToInt64SatFree
    - functionName:    js_atomics_notify
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60239
      functionLinenumberEnd: 60286
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          177
      EdgeCount:       44
      CyclomaticComplexity: 13
      functionsReached:
        - JS_IsUndefined
        - JS_ToInt32Clamp
        - init_list_head
        - js_atomics_get_buf
        - list_add_tail
        - list_del
        - pthread_cond_signal
        - pthread_mutex_lock
        - pthread_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:60249,9'
          Dst:             js_atomics_get_buf
        - Src:             'quickjs.c:60254,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:60257,13'
          Dst:             JS_ToInt32Clamp
        - Src:             'quickjs.c:60266,9'
          Dst:             pthread_mutex_lock
        - Src:             'quickjs.c:60267,9'
          Dst:             init_list_head
        - Src:             'quickjs.c:60271,17'
          Dst:             list_del
        - Src:             'quickjs.c:60273,17'
          Dst:             list_add_tail
        - Src:             'quickjs.c:60281,13'
          Dst:             pthread_cond_signal
        - Src:             'quickjs.c:60283,9'
          Dst:             pthread_mutex_unlock
    - functionName:    JS_ToInt32Clamp
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12777
      functionLinenumberEnd: 12789
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          53
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_DupValue
        - JS_ToInt32SatFree
      functionUses:    20
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:12778,44'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:12778,15'
          Dst:             JS_ToInt32SatFree
    - functionName:    pthread_mutex_lock
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_cond_signal
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_mutex_unlock
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_ToInt32SatFree
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12727
      functionLinenumberEnd: 12768
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          81
      EdgeCount:       24
      CyclomaticComplexity: 5
      functionsReached:
        - JS_IsException
        - JS_ToNumberFree
      functionUses:    2
      BranchProfiles:
        - Branch String:   'quickjs.c:12733,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:12759,15'
          Dst:             JS_ToNumberFree
        - Src:             'quickjs.c:12760,13'
          Dst:             JS_IsException
    - functionName:    js_atomics_wait
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60151
      functionLinenumberEnd: 60234
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          264
      EdgeCount:       59
      CyclomaticComplexity: 18
      functionsReached:
        - JS_AtomToString
        - JS_ThrowTypeError
        - JS_ToBigInt64
        - JS_ToFloat64
        - JS_ToInt32
        - clock_gettime
        - js_atomics_get_buf
        - list_add_tail
        - list_del
        - pthread_cond_destroy
        - pthread_cond_init
        - pthread_cond_timedwait
        - pthread_cond_wait
        - pthread_mutex_lock
        - pthread_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:60163,9'
          Dst:             js_atomics_get_buf
        - Src:             'quickjs.c:60171,13'
          Dst:             JS_ToBigInt64
        - Src:             'quickjs.c:60174,13'
          Dst:             JS_ToInt32
        - Src:             'quickjs.c:60178,9'
          Dst:             JS_ToFloat64
        - Src:             'quickjs.c:60188,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:60193,5'
          Dst:             pthread_mutex_lock
        - Src:             'quickjs.c:60200,9'
          Dst:             pthread_mutex_unlock
        - Src:             'quickjs.c:60201,16'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:60206,5'
          Dst:             pthread_cond_init
        - Src:             'quickjs.c:60208,5'
          Dst:             list_add_tail
        - Src:             'quickjs.c:60211,9'
          Dst:             pthread_cond_wait
        - Src:             'quickjs.c:60215,9'
          Dst:             clock_gettime
        - Src:             'quickjs.c:60222,15'
          Dst:             pthread_cond_timedwait
        - Src:             'quickjs.c:60226,9'
          Dst:             list_del
        - Src:             'quickjs.c:60227,5'
          Dst:             pthread_mutex_unlock
        - Src:             'quickjs.c:60228,5'
          Dst:             pthread_cond_destroy
        - Src:             'quickjs.c:60230,16'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:60232,16'
          Dst:             JS_AtomToString
    - functionName:    JS_ToBigInt64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14317
      functionLinenumberEnd: 14318
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
        - JS_ToBigInt64Free
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:14318,41'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:14318,12'
          Dst:             JS_ToBigInt64Free
    - functionName:    pthread_cond_init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_cond_wait
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    clock_gettime
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_cond_timedwait
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_cond_destroy
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_atomics_pause
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60126
      functionLinenumberEnd: 60146
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          62
      EdgeCount:       18
      CyclomaticComplexity: 4
      functionsReached:
        - JS_ThrowTypeError
        - cpu_pause
      functionUses:    0
      BranchProfiles:
        - Branch String:   'quickjs.c:60130,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:60138,20'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:60144,5'
          Dst:             cpu_pause
    - functionName:    js_atomics_isLockFree
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60086
      functionLinenumberEnd: 60092
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          58
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - JS_ToInt32Sat
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:60088,9'
          Dst:             JS_ToInt32Sat
    - functionName:    JS_ToInt32Sat
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12771
      functionLinenumberEnd: 12772
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
        - JS_ToInt32SatFree
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:12772,41'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:12772,12'
          Dst:             JS_ToInt32SatFree
    - functionName:    js_atomics_store
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60025
      functionLinenumberEnd: 60081
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          189
      EdgeCount:       34
      CyclomaticComplexity: 8
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_ThrowRangeError
        - JS_ThrowTypeErrorDetachedArrayBuffer
        - JS_ToBigInt64
        - JS_ToBigIntFree
        - JS_ToIntegerFree
        - JS_ToUint32
        - abort
        - js_atomics_get_buf
        - typed_array_is_oob
      functionUses:    0
      BranchProfiles:
        - Branch String:   'quickjs.c:60064,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:60033,9'
          Dst:             js_atomics_get_buf
        - Src:             'quickjs.c:60038,36'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:60038,15'
          Dst:             JS_ToBigIntFree
        - Src:             'quickjs.c:60039,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:60041,13'
          Dst:             JS_ToBigInt64
        - Src:             'quickjs.c:60042,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:60048,37'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:60048,15'
          Dst:             JS_ToIntegerFree
        - Src:             'quickjs.c:60049,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:60051,13'
          Dst:             JS_ToUint32
        - Src:             'quickjs.c:60052,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:60057,9'
          Dst:             typed_array_is_oob
        - Src:             'quickjs.c:60058,16'
          Dst:             JS_ThrowTypeErrorDetachedArrayBuffer
        - Src:             'quickjs.c:60060,16'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:60078,9'
          Dst:             abort
    - functionName:    JS_ToIntegerFree
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12691
      functionLinenumberEnd: 12723
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          106
      EdgeCount:       29
      CyclomaticComplexity: 6
      functionsReached:
        - JS_IsException
        - JS_ToNumberFree
        - __JS_NewFloat64
      functionUses:    2
      BranchProfiles:
        - Branch String:   'quickjs.c:12697,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:12712,23'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:12717,15'
          Dst:             JS_ToNumberFree
        - Src:             'quickjs.c:12718,13'
          Dst:             JS_IsException
    - functionName:    js_atomics_op
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59878
      functionLinenumberEnd: 60020
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         91
      ICount:          510
      EdgeCount:       103
      CyclomaticComplexity: 14
      functionsReached:
        - JS_NewBigInt64
        - JS_NewBigUint64
        - JS_ThrowRangeError
        - JS_ThrowTypeErrorDetachedArrayBuffer
        - JS_ToBigInt64
        - JS_ToUint32
        - __JS_NewFloat64
        - abort
        - js_atomics_get_buf
        - typed_array_is_oob
      functionUses:    0
      BranchProfiles:
        - Branch String:   'quickjs.c:59921,5'
          Branch Sides:    []
        - Branch String:   'quickjs.c:59990,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:59885,9'
          Dst:             js_atomics_get_buf
        - Src:             'quickjs.c:59895,17'
          Dst:             JS_ToBigInt64
        - Src:             'quickjs.c:59899,21'
          Dst:             JS_ToBigInt64
        - Src:             'quickjs.c:59905,21'
          Dst:             JS_ToUint32
        - Src:             'quickjs.c:59909,25'
          Dst:             JS_ToUint32
        - Src:             'quickjs.c:59914,13'
          Dst:             typed_array_is_oob
        - Src:             'quickjs.c:59915,20'
          Dst:             JS_ThrowTypeErrorDetachedArrayBuffer
        - Src:             'quickjs.c:59917,20'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:59987,9'
          Dst:             abort
        - Src:             'quickjs.c:60008,15'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:60011,15'
          Dst:             JS_NewBigInt64
        - Src:             'quickjs.c:60014,15'
          Dst:             JS_NewBigUint64
        - Src:             'quickjs.c:60017,9'
          Dst:             abort
    - functionName:    put_u64
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dataview_is_oob
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59488
      functionLinenumberEnd: 59502
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          69
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:59492,5'
          Dst:             __assert_fail
    - functionName:    get_dataview
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59505
      functionLinenumberEnd: 59516
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          36
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_ThrowTypeError
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:59512,9'
          Dst:             JS_ThrowTypeError
    - functionName:    js_dataview_setValue
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59677
      functionLinenumberEnd: 59767
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         58
      ICount:          288
      EdgeCount:       72
      CyclomaticComplexity: 16
      functionsReached:
        - JS_GetOpaque2
        - JS_ThrowRangeError
        - JS_ThrowTypeError
        - JS_ThrowTypeErrorDetachedArrayBuffer
        - JS_ToBigInt64
        - JS_ToBool
        - JS_ToFloat64
        - JS_ToIndex
        - JS_ToUint32
        - abort
        - bswap16
        - bswap32
        - bswap64
        - put_u16
        - put_u32
        - put_u64
        - tofp16
      functionUses:    0
      BranchProfiles:
        - Branch String:   'quickjs.c:59737,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:59688,10'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:59692,9'
          Dst:             JS_ToIndex
        - Src:             'quickjs.c:59698,13'
          Dst:             JS_ToUint32
        - Src:             'quickjs.c:59701,13'
          Dst:             JS_ToBigInt64
        - Src:             'quickjs.c:59705,13'
          Dst:             JS_ToFloat64
        - Src:             'quickjs.c:59708,17'
          Dst:             tofp16
        - Src:             'quickjs.c:59722,32'
          Dst:             JS_ToBool
        - Src:             'quickjs.c:59726,16'
          Dst:             JS_ThrowTypeErrorDetachedArrayBuffer
        - Src:             'quickjs.c:59729,16'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:59734,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:59746,17'
          Dst:             bswap16
        - Src:             'quickjs.c:59747,9'
          Dst:             put_u16
        - Src:             'quickjs.c:59753,17'
          Dst:             bswap32
        - Src:             'quickjs.c:59754,9'
          Dst:             put_u32
        - Src:             'quickjs.c:59760,19'
          Dst:             bswap64
        - Src:             'quickjs.c:59761,9'
          Dst:             put_u64
        - Src:             'quickjs.c:59764,9'
          Dst:             abort
    - functionName:    bswap16
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 227
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    put_u16
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bswap32
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 235
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    put_u32
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bswap64
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_dataview_getValue
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59565
      functionLinenumberEnd: 59672
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         59
      ICount:          295
      EdgeCount:       73
      CyclomaticComplexity: 16
      functionsReached:
        - JS_GetOpaque2
        - JS_NewBigInt64
        - JS_NewBigUint64
        - JS_ThrowRangeError
        - JS_ThrowTypeError
        - JS_ThrowTypeErrorDetachedArrayBuffer
        - JS_ToBool
        - JS_ToIndex
        - __JS_NewFloat64
        - abort
        - bswap16
        - bswap32
        - bswap64
        - fromfp16
        - get_u16
        - get_u32
        - get_u64
      functionUses:    0
      BranchProfiles:
        - Branch String:   'quickjs.c:59595,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:59574,10'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:59578,9'
          Dst:             JS_ToIndex
        - Src:             'quickjs.c:59580,32'
          Dst:             JS_ToBool
        - Src:             'quickjs.c:59584,16'
          Dst:             JS_ThrowTypeErrorDetachedArrayBuffer
        - Src:             'quickjs.c:59587,16'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:59592,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:59601,13'
          Dst:             get_u16
        - Src:             'quickjs.c:59603,17'
          Dst:             bswap16
        - Src:             'quickjs.c:59606,13'
          Dst:             get_u16
        - Src:             'quickjs.c:59608,17'
          Dst:             bswap16
        - Src:             'quickjs.c:59611,13'
          Dst:             get_u32
        - Src:             'quickjs.c:59613,17'
          Dst:             bswap32
        - Src:             'quickjs.c:59616,13'
          Dst:             get_u32
        - Src:             'quickjs.c:59618,17'
          Dst:             bswap32
        - Src:             'quickjs.c:59619,16'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:59623,17'
          Dst:             get_u64
        - Src:             'quickjs.c:59625,21'
          Dst:             bswap64
        - Src:             'quickjs.c:59626,20'
          Dst:             JS_NewBigInt64
        - Src:             'quickjs.c:59632,17'
          Dst:             get_u64
        - Src:             'quickjs.c:59634,21'
          Dst:             bswap64
        - Src:             'quickjs.c:59635,20'
          Dst:             JS_NewBigUint64
        - Src:             'quickjs.c:59641,17'
          Dst:             get_u16
        - Src:             'quickjs.c:59643,21'
          Dst:             bswap16
        - Src:             'quickjs.c:59644,41'
          Dst:             fromfp16
        - Src:             'quickjs.c:59644,20'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:59652,17'
          Dst:             get_u32
        - Src:             'quickjs.c:59654,21'
          Dst:             bswap32
        - Src:             'quickjs.c:59656,20'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:59664,19'
          Dst:             get_u64
        - Src:             'quickjs.c:59666,23'
          Dst:             bswap64
        - Src:             'quickjs.c:59667,20'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:59670,9'
          Dst:             abort
    - functionName:    get_u64
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_dataview_get_byteOffset
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59549
      functionLinenumberEnd: 59560
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          57
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_ThrowTypeErrorArrayBufferOOB
        - __JS_NewFloat64
        - dataview_is_oob
        - get_dataview
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:59553,9'
          Dst:             get_dataview
        - Src:             'quickjs.c:59556,9'
          Dst:             dataview_is_oob
        - Src:             'quickjs.c:59557,16'
          Dst:             JS_ThrowTypeErrorArrayBufferOOB
        - Src:             'quickjs.c:59559,12'
          Dst:             __JS_NewFloat64
    - functionName:    js_dataview_get_byteLength
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59530
      functionLinenumberEnd: 59546
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          89
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - JS_ThrowTypeErrorArrayBufferOOB
        - __JS_NewFloat64
        - dataview_is_oob
        - get_dataview
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:59535,9'
          Dst:             get_dataview
        - Src:             'quickjs.c:59538,9'
          Dst:             dataview_is_oob
        - Src:             'quickjs.c:59539,16'
          Dst:             JS_ThrowTypeErrorArrayBufferOOB
        - Src:             'quickjs.c:59543,16'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:59545,12'
          Dst:             __JS_NewFloat64
    - functionName:    js_dataview_get_buffer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59519
      functionLinenumberEnd: 59527
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_DupValue
        - get_dataview
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:59522,9'
          Dst:             get_dataview
        - Src:             'quickjs.c:59526,12'
          Dst:             JS_DupValue
    - functionName:    js_make_read_written
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58935
      functionLinenumberEnd: 58949
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          88
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - JS_DefinePropertyValueStr
        - JS_FreeValue
        - JS_IsException
        - JS_NewObject
        - __JS_NewFloat64
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:58936,19'
          Dst:             JS_NewObject
        - Src:             'quickjs.c:58937,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:58940,35'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:58939,9'
          Dst:             JS_DefinePropertyValueStr
        - Src:             'quickjs.c:58943,35'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:58942,9'
          Dst:             JS_DefinePropertyValueStr
        - Src:             'quickjs.c:58947,5'
          Dst:             JS_FreeValue
    - functionName:    JS_DefinePropertyValueStr
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10320
      functionLinenumberEnd: 10331
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_DefinePropertyValue
        - JS_FreeAtom
        - JS_FreeValue
        - JS_NewAtom
      functionUses:    21
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:10323,12'
          Dst:             JS_NewAtom
        - Src:             'quickjs.c:10325,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:10328,11'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:10329,5'
          Dst:             JS_FreeAtom
    - functionName:    u8a_hex_encode
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58562
      functionLinenumberEnd: 58567
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          96
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    b64_encode
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58360
      functionLinenumberEnd: 58385
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          140
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_uint8array_bytes
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58648
      functionLinenumberEnd: 58658
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_ThrowTypeErrorArrayBufferOOB
        - typed_array_is_oob
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:58649,9'
          Dst:             typed_array_is_oob
        - Src:             'quickjs.c:58650,9'
          Dst:             JS_ThrowTypeErrorArrayBufferOOB
    - functionName:    check_uint8array
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58629
      functionLinenumberEnd: 58641
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          36
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_ThrowTypeError
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:58639,5'
          Dst:             JS_ThrowTypeError
    - functionName:    js_uint8array_set_from_hex
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59012
      functionLinenumberEnd: 59043
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          91
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached:
        - JS_FreeCString
        - JS_IsString
        - JS_ThrowSyntaxError
        - JS_ThrowTypeError
        - JS_ToCStringLen
        - check_uint8array
        - get_uint8array_bytes
        - js_make_read_written
        - u8a_hex_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:59020,9'
          Dst:             check_uint8array
        - Src:             'quickjs.c:59024,10'
          Dst:             JS_IsString
        - Src:             'quickjs.c:59025,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:59027,11'
          Dst:             JS_ToCStringLen
        - Src:             'quickjs.c:59031,9'
          Dst:             get_uint8array_bytes
        - Src:             'quickjs.c:59032,9'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:59036,19'
          Dst:             u8a_hex_decode
        - Src:             'quickjs.c:59037,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:59040,16'
          Dst:             JS_ThrowSyntaxError
        - Src:             'quickjs.c:59042,12'
          Dst:             js_make_read_written
    - functionName:    u8a_hex_decode
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58575
      functionLinenumberEnd: 58597
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          84
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - from_hex
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:58585,18'
          Dst:             from_hex
        - Src:             'quickjs.c:58586,18'
          Dst:             from_hex
    - functionName:    from_hex
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 366
      functionLinenumberEnd: 375
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          54
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_uint8array_set_from_base64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58955
      functionLinenumberEnd: 59006
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          138
      EdgeCount:       32
      CyclomaticComplexity: 11
      functionsReached:
        - JS_FreeCString
        - JS_IsString
        - JS_ThrowSyntaxError
        - JS_ThrowTypeError
        - JS_ToCStringLen
        - check_options_object
        - check_uint8array
        - from_base64
        - get_uint8array_bytes
        - js_make_read_written
        - parse_alphabet_option
        - parse_last_chunk_option
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:58964,9'
          Dst:             check_uint8array
        - Src:             'quickjs.c:58968,10'
          Dst:             JS_IsString
        - Src:             'quickjs.c:58969,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:58971,11'
          Dst:             JS_ToCStringLen
        - Src:             'quickjs.c:58976,9'
          Dst:             check_options_object
        - Src:             'quickjs.c:58977,9'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:58980,16'
          Dst:             parse_alphabet_option
        - Src:             'quickjs.c:58982,9'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:58985,18'
          Dst:             parse_last_chunk_option
        - Src:             'quickjs.c:58987,9'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:58991,9'
          Dst:             get_uint8array_bytes
        - Src:             'quickjs.c:58992,9'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:58996,19'
          Dst:             from_base64
        - Src:             'quickjs.c:59000,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:59003,16'
          Dst:             JS_ThrowSyntaxError
        - Src:             'quickjs.c:59005,12'
          Dst:             js_make_read_written
    - functionName:    check_options_object
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58663
      functionLinenumberEnd: 58671
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          33
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_IsObject
        - JS_IsUndefined
        - JS_ThrowTypeError
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:58664,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:58666,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:58667,9'
          Dst:             JS_ThrowTypeError
    - functionName:    parse_alphabet_option
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58676
      functionLinenumberEnd: 58710
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          81
      EdgeCount:       26
      CyclomaticComplexity: 9
      functionsReached:
        - JS_FreeCString
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsString
        - JS_IsUndefined
        - JS_ThrowTypeError
        - JS_ToCString
        - strcmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:58681,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:58684,11'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:58685,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:58687,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:58689,10'
          Dst:             JS_IsString
        - Src:             'quickjs.c:58690,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:58691,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:58695,11'
          Dst:             JS_ToCString
        - Src:             'quickjs.c:58696,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:58700,10'
          Dst:             strcmp
        - Src:             'quickjs.c:58702,15'
          Dst:             strcmp
        - Src:             'quickjs.c:58705,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:58708,5'
          Dst:             JS_FreeCString
    - functionName:    parse_last_chunk_option
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58714
      functionLinenumberEnd: 58750
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          89
      EdgeCount:       29
      CyclomaticComplexity: 10
      functionsReached:
        - JS_FreeCString
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsString
        - JS_IsUndefined
        - JS_ThrowTypeError
        - JS_ToCString
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:58719,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:58722,11'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:58723,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:58725,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:58727,10'
          Dst:             JS_IsString
        - Src:             'quickjs.c:58728,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:58729,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:58733,11'
          Dst:             JS_ToCString
        - Src:             'quickjs.c:58734,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:58738,10'
          Dst:             strcmp
        - Src:             'quickjs.c:58740,15'
          Dst:             strcmp
        - Src:             'quickjs.c:58742,15'
          Dst:             strcmp
        - Src:             'quickjs.c:58745,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:58748,5'
          Dst:             JS_FreeCString
    - functionName:    from_base64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58408
      functionLinenumberEnd: 58556
      functionDepth:   0
      returnType:      size_t
      argCount:        8
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         74
      ICount:          380
      EdgeCount:       104
      CyclomaticComplexity: 32
      functionsReached:
        - b64_skip_ws
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:58450,17'
          Dst:             b64_skip_ws
        - Src:             'quickjs.c:58480,21'
          Dst:             b64_skip_ws
        - Src:             'quickjs.c:58492,29'
          Dst:             b64_skip_ws
    - functionName:    b64_skip_ws
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58390
      functionLinenumberEnd: 58393
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          37
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_uint8array_to_hex
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58813
      functionLinenumberEnd: 58836
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          75
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - JS_ThrowRangeError
        - check_uint8array
        - get_uint8array_bytes
        - js_alloc_string
        - u8a_hex_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:58819,9'
          Dst:             check_uint8array
        - Src:             'quickjs.c:58822,9'
          Dst:             get_uint8array_bytes
        - Src:             'quickjs.c:58827,16'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:58829,12'
          Dst:             js_alloc_string
        - Src:             'quickjs.c:58833,5'
          Dst:             u8a_hex_encode
    - functionName:    js_uint8array_to_base64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58755
      functionLinenumberEnd: 58808
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          188
      EdgeCount:       47
      CyclomaticComplexity: 15
      functionsReached:
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsUndefined
        - JS_ThrowRangeError
        - JS_ToBool
        - b64_encode
        - check_options_object
        - check_uint8array
        - get_uint8array_bytes
        - js_alloc_string
        - parse_alphabet_option
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:58765,9'
          Dst:             check_uint8array
        - Src:             'quickjs.c:58770,9'
          Dst:             check_options_object
        - Src:             'quickjs.c:58772,16'
          Dst:             parse_alphabet_option
        - Src:             'quickjs.c:58777,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:58778,26'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:58779,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:58781,24'
          Dst:             JS_ToBool
        - Src:             'quickjs.c:58782,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:58785,9'
          Dst:             get_uint8array_bytes
        - Src:             'quickjs.c:58791,16'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:58793,12'
          Dst:             js_alloc_string
        - Src:             'quickjs.c:58798,15'
          Dst:             b64_encode
    - functionName:    JS_NewUint8ArrayCopy
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58600
      functionLinenumberEnd: 58624
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          65
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - __assert_fail
        - js_array_buffer_constructor3
        - js_array_buffer_free
        - js_create_from_ctor
        - js_get_array_buffer
        - typed_array_init
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:58604,14'
          Dst:             js_array_buffer_constructor3
        - Src:             'quickjs.c:58604,14'
          Dst:             js_array_buffer_free
        - Src:             'quickjs.c:58609,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:58611,11'
          Dst:             js_create_from_ctor
        - Src:             'quickjs.c:58612,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:58613,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:58616,12'
          Dst:             js_get_array_buffer
        - Src:             'quickjs.c:58617,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:58618,9'
          Dst:             typed_array_init
        - Src:             'quickjs.c:58620,9'
          Dst:             JS_FreeValue
    - functionName:    js_array_buffer_free
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56120
      functionLinenumberEnd: 56122
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_free_rt
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56121,5'
          Dst:             js_free_rt
    - functionName:    js_array_buffer_constructor3
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56050
      functionLinenumberEnd: 56117
      functionDepth:   0
      returnType:      'N/A'
      argCount:        10
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         53
      ICount:          243
      EdgeCount:       73
      CyclomaticComplexity: 22
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_SetOpaque
        - JS_ThrowInternalError
        - JS_ThrowRangeError
        - init_list_head
        - js_create_from_ctor
        - js_free
        - js_malloc
        - js_mallocz
        - max_int
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56059,16'
          Dst:             JS_ThrowInternalError
        - Src:             'quickjs.c:56063,11'
          Dst:             js_create_from_ctor
        - Src:             'quickjs.c:56064,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:56075,12'
          Dst:             js_malloc
        - Src:             'quickjs.c:56075,12'
          Dst:             js_malloc
        - Src:             'quickjs.c:56087,50'
          Dst:             max_int
        - Src:             'quickjs.c:56093,42'
          Dst:             max_int
        - Src:             'quickjs.c:56093,26'
          Dst:             js_mallocz
        - Src:             'quickjs.c:56104,5'
          Dst:             init_list_head
        - Src:             'quickjs.c:56111,5'
          Dst:             JS_SetOpaque
        - Src:             'quickjs.c:0,0'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:56114,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:56115,5'
          Dst:             js_free
    - functionName:    js_get_array_buffer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56384
      functionLinenumberEnd: 56396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          46
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - JS_ThrowTypeErrorInvalidClass
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56392,9'
          Dst:             JS_ThrowTypeErrorInvalidClass
    - functionName:    typed_array_init
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59123
      functionLinenumberEnd: 59148
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeValue
        - js_malloc
        - list_add_tail
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:59131,10'
          Dst:             js_malloc
        - Src:             'quickjs.c:59133,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:59143,5'
          Dst:             list_add_tail
    - functionName:    js_uint8array_from_hex
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58898
      functionLinenumberEnd: 58931
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          79
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - JS_FreeCString
        - JS_IsString
        - JS_NewUint8ArrayCopy
        - JS_ThrowSyntaxError
        - JS_ThrowTypeError
        - JS_ToCStringLen
        - js_free
        - js_malloc
        - u8a_hex_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:58905,10'
          Dst:             JS_IsString
        - Src:             'quickjs.c:58906,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:58908,11'
          Dst:             JS_ToCStringLen
        - Src:             'quickjs.c:58913,11'
          Dst:             js_malloc
        - Src:             'quickjs.c:58915,9'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:58919,19'
          Dst:             u8a_hex_decode
        - Src:             'quickjs.c:58920,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:58923,9'
          Dst:             js_free
        - Src:             'quickjs.c:58924,16'
          Dst:             JS_ThrowSyntaxError
        - Src:             'quickjs.c:58928,14'
          Dst:             JS_NewUint8ArrayCopy
        - Src:             'quickjs.c:58929,5'
          Dst:             js_free
    - functionName:    js_uint8array_from_base64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58841
      functionLinenumberEnd: 58893
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          127
      EdgeCount:       29
      CyclomaticComplexity: 10
      functionsReached:
        - JS_FreeCString
        - JS_IsString
        - JS_NewUint8ArrayCopy
        - JS_ThrowSyntaxError
        - JS_ThrowTypeError
        - JS_ToCStringLen
        - check_options_object
        - from_base64
        - js_free
        - js_malloc
        - parse_alphabet_option
        - parse_last_chunk_option
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:58849,10'
          Dst:             JS_IsString
        - Src:             'quickjs.c:58850,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:58852,11'
          Dst:             JS_ToCStringLen
        - Src:             'quickjs.c:58857,9'
          Dst:             check_options_object
        - Src:             'quickjs.c:58858,9'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:58861,16'
          Dst:             parse_alphabet_option
        - Src:             'quickjs.c:58863,9'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:58866,18'
          Dst:             parse_last_chunk_option
        - Src:             'quickjs.c:58868,9'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:58873,11'
          Dst:             js_malloc
        - Src:             'quickjs.c:58875,9'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:58879,19'
          Dst:             from_base64
        - Src:             'quickjs.c:58883,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:58886,9'
          Dst:             js_free
        - Src:             'quickjs.c:58887,16'
          Dst:             JS_ThrowSyntaxError
        - Src:             'quickjs.c:58890,14'
          Dst:             JS_NewUint8ArrayCopy
        - Src:             'quickjs.c:58891,5'
          Dst:             js_free
    - functionName:    isfp16zero
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 453
      functionLinenumberEnd: 454
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    isfp16nan
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 448
      functionLinenumberEnd: 449
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_cmp_doubles
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57929
      functionLinenumberEnd: 57937
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - double
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          56
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_TA_cmp_generic
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58045
      functionLinenumberEnd: 58089
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          135
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - JS_Call
        - JS_FreeValue
        - JS_IsException
        - JS_ToFloat64Free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:58063,15'
          Dst:             JS_Call
        - Src:             'quickjs.c:58064,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:58073,17'
          Dst:             JS_ToFloat64Free
        - Src:             'quickjs.c:58085,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:58086,9'
          Dst:             JS_FreeValue
    - functionName:    js_TA_cmp_float64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57988
      functionLinenumberEnd: 57989
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_cmp_doubles
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:57989,12'
          Dst:             js_cmp_doubles
    - functionName:    js_TA_get_float64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58032
      functionLinenumberEnd: 58033
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __JS_NewFloat64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:58033,12'
          Dst:             __JS_NewFloat64
    - functionName:    js_TA_cmp_float32
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57984
      functionLinenumberEnd: 57985
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_cmp_doubles
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:57985,12'
          Dst:             js_cmp_doubles
    - functionName:    js_TA_get_float32
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58028
      functionLinenumberEnd: 58029
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __JS_NewFloat64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:58029,12'
          Dst:             __JS_NewFloat64
    - functionName:    js_TA_cmp_float16
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57979
      functionLinenumberEnd: 57981
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fromfp16
        - js_cmp_doubles
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:57980,27'
          Dst:             fromfp16
        - Src:             'quickjs.c:57981,27'
          Dst:             fromfp16
        - Src:             'quickjs.c:57980,12'
          Dst:             js_cmp_doubles
    - functionName:    js_TA_get_float16
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58024
      functionLinenumberEnd: 58025
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __JS_NewFloat64
        - fromfp16
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:58025,33'
          Dst:             fromfp16
        - Src:             'quickjs.c:58025,12'
          Dst:             __JS_NewFloat64
    - functionName:    js_TA_cmp_uint64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57973
      functionLinenumberEnd: 57976
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_TA_get_uint64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58020
      functionLinenumberEnd: 58021
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_NewBigUint64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:58021,12'
          Dst:             JS_NewBigUint64
    - functionName:    js_TA_cmp_int64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57967
      functionLinenumberEnd: 57970
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_TA_get_int64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58016
      functionLinenumberEnd: 58017
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_NewBigInt64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:58017,12'
          Dst:             JS_NewBigInt64
    - functionName:    js_TA_cmp_uint32
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57961
      functionLinenumberEnd: 57964
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_TA_get_uint32
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58012
      functionLinenumberEnd: 58013
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __JS_NewFloat64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:58013,12'
          Dst:             __JS_NewFloat64
    - functionName:    js_TA_cmp_int32
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57955
      functionLinenumberEnd: 57958
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_TA_get_int32
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58008
      functionLinenumberEnd: 58009
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_TA_cmp_uint16
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57951
      functionLinenumberEnd: 57952
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_TA_get_uint16
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58004
      functionLinenumberEnd: 58005
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_TA_cmp_int16
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57947
      functionLinenumberEnd: 57948
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_TA_get_int16
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58000
      functionLinenumberEnd: 58001
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_TA_cmp_uint8
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57943
      functionLinenumberEnd: 57944
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_TA_get_uint8
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57996
      functionLinenumberEnd: 57997
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_TA_cmp_int8
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57939
      functionLinenumberEnd: 57940
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_TA_get_int8
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57992
      functionLinenumberEnd: 57993
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    slice_memcpy
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57806
      functionLinenumberEnd: 57815
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          210
      EdgeCount:       54
      CyclomaticComplexity: 16
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    validate_typed_array
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56710
      functionLinenumberEnd: 56720
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          32
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_ThrowTypeErrorArrayBufferOOB
        - get_typed_array
        - typed_array_is_oob
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56712,9'
          Dst:             get_typed_array
        - Src:             'quickjs.c:56715,9'
          Dst:             typed_array_is_oob
        - Src:             'quickjs.c:56716,9'
          Dst:             JS_ThrowTypeErrorArrayBufferOOB
    - functionName:    get_typed_array
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56646
      functionLinenumberEnd: 56658
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          43
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_ThrowTypeError
      functionUses:    20
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56654,9'
          Dst:             JS_ThrowTypeError
    - functionName:    js_typed_array_set_internal
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56830
      functionLinenumberEnd: 56905
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          231
      EdgeCount:       59
      CyclomaticComplexity: 18
      functionsReached:
        - JS_FreeValue
        - JS_GetPropertyUint32
        - JS_IsException
        - JS_SetPropertyUint32
        - JS_ThrowRangeError
        - JS_ThrowTypeErrorArrayBufferOOB
        - JS_ToInt64Sat
        - JS_ToObject
        - get_typed_array
        - js_get_length64
        - typed_array_is_oob
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56837,9'
          Dst:             get_typed_array
        - Src:             'quickjs.c:56840,9'
          Dst:             JS_ToInt64Sat
        - Src:             'quickjs.c:56844,9'
          Dst:             typed_array_is_oob
        - Src:             'quickjs.c:56846,9'
          Dst:             JS_ThrowTypeErrorArrayBufferOOB
        - Src:             'quickjs.c:56850,15'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:56851,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:56862,13'
          Dst:             typed_array_is_oob
        - Src:             'quickjs.c:56884,13'
          Dst:             js_get_length64
        - Src:             'quickjs.c:56888,13'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:56893,15'
          Dst:             JS_GetPropertyUint32
        - Src:             'quickjs.c:56894,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:56896,13'
          Dst:             JS_SetPropertyUint32
        - Src:             'quickjs.c:56900,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:56903,5'
          Dst:             JS_FreeValue
    - functionName:    JS_SetPropertyUint32
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9673
      functionLinenumberEnd: 9674
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_SetPropertyValue
        - __JS_NewFloat64
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:9674,47'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:9674,12'
          Dst:             JS_SetPropertyValue
    - functionName:    js_typed_array_indexOf
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57360
      functionLinenumberEnd: 57643
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         227
      ICount:          931
      EdgeCount:       318
      CyclomaticComplexity: 93
      functionsReached:
        - JS_IsUndefined
        - JS_ThrowTypeErrorArrayBufferOOB
        - JS_ToBigInt64
        - JS_ToInt32Clamp
        - JS_ToInt64Clamp
        - fromfp16
        - get_typed_array
        - isfp16nan
        - isfp16zero
        - js_bigint_set_short
        - js_bigint_sign
        - memchr
        - min_int
        - tofp16
        - typed_array_is_oob
      functionUses:    0
      BranchProfiles:
        - Branch String:   'quickjs.c:57465,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:57368,9'
          Dst:             get_typed_array
        - Src:             'quickjs.c:57371,9'
          Dst:             typed_array_is_oob
        - Src:             'quickjs.c:57372,16'
          Dst:             JS_ThrowTypeErrorArrayBufferOOB
        - Src:             'quickjs.c:57382,17'
          Dst:             JS_ToInt64Clamp
        - Src:             'quickjs.c:57393,17'
          Dst:             JS_ToInt32Clamp
        - Src:             'quickjs.c:57402,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:57408,11'
          Dst:             min_int
        - Src:             'quickjs.c:57412,13'
          Dst:             min_int
        - Src:             'quickjs.c:57414,13'
          Dst:             min_int
        - Src:             'quickjs.c:57415,12'
          Dst:             min_int
        - Src:             'quickjs.c:57437,18'
          Dst:             js_bigint_set_short
        - Src:             'quickjs.c:57445,17'
          Dst:             js_bigint_sign
        - Src:             'quickjs.c:57457,13'
          Dst:             JS_ToBigInt64
        - Src:             'quickjs.c:57481,26'
          Dst:             memchr
        - Src:             'quickjs.c:57541,21'
          Dst:             isfp16nan
        - Src:             'quickjs.c:57550,21'
          Dst:             isfp16zero
        - Src:             'quickjs.c:57555,25'
          Dst:             tofp16
        - Src:             'quickjs.c:57555,41'
          Dst:             fromfp16
    - functionName:    memchr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_typed_array_join
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57647
      functionLinenumberEnd: 57722
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         75
      ICount:          337
      EdgeCount:       104
      CyclomaticComplexity: 31
      functionsReached:
        - JS_FreeValue
        - JS_GetPropertyUint32
        - JS_IsException
        - JS_IsNull
        - JS_IsUndefined
        - JS_ThrowTypeErrorArrayBufferOOB
        - JS_ToLocaleStringFree
        - JS_ToString
        - get_typed_array
        - max_int
        - min_int
        - string_buffer_concat
        - string_buffer_concat_value_free
        - string_buffer_end
        - string_buffer_free
        - string_buffer_init
        - string_buffer_putc8
        - typed_array_is_oob
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:57655,9'
          Dst:             get_typed_array
        - Src:             'quickjs.c:57658,9'
          Dst:             typed_array_is_oob
        - Src:             'quickjs.c:57659,16'
          Dst:             JS_ThrowTypeErrorArrayBufferOOB
        - Src:             'quickjs.c:57663,41'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:57664,15'
          Dst:             JS_ToString
        - Src:             'quickjs.c:57665,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:57674,15'
          Dst:             min_int
        - Src:             'quickjs.c:57676,5'
          Dst:             string_buffer_init
        - Src:             'quickjs.c:57689,14'
          Dst:             JS_GetPropertyUint32
        - Src:             'quickjs.c:57691,14'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:57691,32'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:57692,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:57695,22'
          Dst:             JS_ToLocaleStringFree
        - Src:             'quickjs.c:57697,17'
          Dst:             string_buffer_concat_value_free
        - Src:             'quickjs.c:57682,21'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:57685,21'
          Dst:             string_buffer_concat
        - Src:             'quickjs.c:57689,14'
          Dst:             JS_GetPropertyUint32
        - Src:             'quickjs.c:57691,14'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:57691,32'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:57692,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:57695,22'
          Dst:             JS_ToLocaleStringFree
        - Src:             'quickjs.c:57697,17'
          Dst:             string_buffer_concat_value_free
        - Src:             'quickjs.c:57703,9'
          Dst:             max_int
        - Src:             'quickjs.c:57706,17'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:57709,17'
          Dst:             string_buffer_concat
        - Src:             'quickjs.c:57714,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:57715,12'
          Dst:             string_buffer_end
        - Src:             'quickjs.c:57718,5'
          Dst:             string_buffer_free
        - Src:             'quickjs.c:57719,5'
          Dst:             JS_FreeValue
    - functionName:    JS_ToLocaleStringFree
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13260
      functionLinenumberEnd: 13264
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          35
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_InvokeFree
        - JS_IsNull
        - JS_IsUndefined
        - JS_ToStringFree
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:13261,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:13261,32'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:13262,16'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:13263,12'
          Dst:             JS_InvokeFree
    - functionName:    string_buffer_concat_value_free
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3877
      functionLinenumberEnd: 3895
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_ToStringFree
        - string_buffer_concat
        - string_buffer_set_error
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3883,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:3887,13'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:3888,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:3889,20'
          Dst:             string_buffer_set_error
        - Src:             'quickjs.c:3892,11'
          Dst:             string_buffer_concat
        - Src:             'quickjs.c:3893,5'
          Dst:             JS_FreeValue
    - functionName:    JS_InvokeFree
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20310
      functionLinenumberEnd: 20313
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_FreeValue
        - JS_Invoke
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20311,19'
          Dst:             JS_Invoke
        - Src:             'quickjs.c:20312,5'
          Dst:             JS_FreeValue
    - functionName:    JS_Invoke
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20300
      functionLinenumberEnd: 20306
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_CallFree
        - JS_GetPropertyInternal
        - JS_IsException
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20302,16'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:20303,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:20305,12'
          Dst:             JS_CallFree
    - functionName:    js_typed_array_toSorted
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58238
      functionLinenumberEnd: 58252
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          50
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - get_typed_array
        - js_typed_array_constructor_ta
        - js_typed_array_sort
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:58242,9'
          Dst:             get_typed_array
        - Src:             'quickjs.c:58245,11'
          Dst:             js_typed_array_constructor_ta
        - Src:             'quickjs.c:58247,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:58249,11'
          Dst:             js_typed_array_sort
        - Src:             'quickjs.c:58250,5'
          Dst:             JS_FreeValue
    - functionName:    js_typed_array_constructor_ta
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59248
      functionLinenumberEnd: 59300
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          161
      EdgeCount:       42
      CyclomaticComplexity: 13
      functionsReached:
        - JS_FreeValue
        - JS_GetOpaque
        - JS_GetPropertyUint32
        - JS_IsException
        - JS_SetPropertyUint32
        - JS_ThrowTypeErrorArrayBufferOOB
        - js_array_buffer_constructor1
        - js_create_from_ctor
        - typed_array_init
        - typed_array_is_oob
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:59256,11'
          Dst:             js_create_from_ctor
        - Src:             'quickjs.c:59257,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:59260,9'
          Dst:             typed_array_is_oob
        - Src:             'quickjs.c:59265,14'
          Dst:             js_array_buffer_constructor1
        - Src:             'quickjs.c:59268,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:59271,9'
          Dst:             typed_array_is_oob
        - Src:             'quickjs.c:59272,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:59276,12'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:59277,9'
          Dst:             typed_array_init
        - Src:             'quickjs.c:59289,19'
          Dst:             JS_GetPropertyUint32
        - Src:             'quickjs.c:59290,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:59292,17'
          Dst:             JS_SetPropertyUint32
        - Src:             'quickjs.c:0,0'
          Dst:             JS_ThrowTypeErrorArrayBufferOOB
        - Src:             'quickjs.c:59298,5'
          Dst:             JS_FreeValue
    - functionName:    js_typed_array_sort
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58093
      functionLinenumberEnd: 58234
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         98
      ICount:          599
      EdgeCount:       130
      CyclomaticComplexity: 34
      functionsReached:
        - JS_DupValue
        - JS_IsUndefined
        - abort
        - check_function
        - js_TA_cmp_generic
        - js_free
        - js_malloc
        - js_typed_array_get_length_unsafe
        - min_int
        - rqsort
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs.c:58196,17'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:58104,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:58104,37'
          Dst:             check_function
        - Src:             'quickjs.c:58106,11'
          Dst:             js_typed_array_get_length_unsafe
        - Src:             'quickjs.c:58159,13'
          Dst:             abort
        - Src:             'quickjs.c:58169,21'
          Dst:             js_malloc
        - Src:             'quickjs.c:58175,25'
          Dst:             js_malloc
        - Src:             'quickjs.c:58177,17'
          Dst:             js_free
        - Src:             'quickjs.c:58184,13'
          Dst:             rqsort
        - Src:             'quickjs.c:58184,13'
          Dst:             js_TA_cmp_generic
        - Src:             'quickjs.c:58188,21'
          Dst:             js_free
        - Src:             'quickjs.c:58189,21'
          Dst:             js_free
        - Src:             'quickjs.c:58195,23'
          Dst:             min_int
        - Src:             'quickjs.c:58222,21'
          Dst:             abort
        - Src:             'quickjs.c:58225,13'
          Dst:             js_free
        - Src:             'quickjs.c:58226,13'
          Dst:             js_free
        - Src:             'quickjs.c:58228,13'
          Dst:             rqsort
        - Src:             'quickjs.c:58233,12'
          Dst:             JS_DupValue
    - functionName:    js_typed_array_get_length_unsafe
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56697
      functionLinenumberEnd: 56707
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          34
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_ThrowTypeErrorArrayBufferOOB
        - get_typed_array
        - typed_array_is_oob
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56699,9'
          Dst:             get_typed_array
        - Src:             'quickjs.c:56702,9'
          Dst:             typed_array_is_oob
        - Src:             'quickjs.c:56703,9'
          Dst:             JS_ThrowTypeErrorArrayBufferOOB
    - functionName:    js_array_buffer_constructor1
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56137
      functionLinenumberEnd: 56138
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_array_buffer_constructor2
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56138,12'
          Dst:             js_array_buffer_constructor2
    - functionName:    js_array_buffer_constructor2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56128
      functionLinenumberEnd: 56129
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_array_buffer_constructor3
        - js_array_buffer_free
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56129,12'
          Dst:             js_array_buffer_constructor3
        - Src:             'quickjs.c:56129,12'
          Dst:             js_array_buffer_free
    - functionName:    js_typed_array_subarray
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57882
      functionLinenumberEnd: 57924
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          129
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_IsUndefined
        - JS_ToInt32Clamp
        - get_typed_array
        - js_typed_array___speciesCreate
        - js_typed_array_get_buffer
        - max_int
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:57890,9'
          Dst:             get_typed_array
        - Src:             'quickjs.c:57894,9'
          Dst:             JS_ToInt32Clamp
        - Src:             'quickjs.c:57903,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:57907,13'
          Dst:             JS_ToInt32Clamp
        - Src:             'quickjs.c:57911,17'
          Dst:             js_typed_array_get_buffer
        - Src:             'quickjs.c:57912,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:57910,13'
          Dst:             max_int
        - Src:             'quickjs.c:57918,11'
          Dst:             js_typed_array___speciesCreate
        - Src:             'quickjs.c:57919,5'
          Dst:             JS_FreeValue
    - functionName:    js_typed_array_get_buffer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56734
      functionLinenumberEnd: 56742
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_DupValue
        - get_typed_array
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56737,9'
          Dst:             get_typed_array
        - Src:             'quickjs.c:56741,12'
          Dst:             JS_DupValue
    - functionName:    js_typed_array___speciesCreate
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57035
      functionLinenumberEnd: 57057
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          67
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_IsUndefined
        - JS_SpeciesConstructor
        - get_typed_array
        - js_typed_array_constructor
        - js_typed_array_create
        - max_int
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:57042,9'
          Dst:             get_typed_array
        - Src:             'quickjs.c:57045,12'
          Dst:             JS_SpeciesConstructor
        - Src:             'quickjs.c:57046,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:57049,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:57050,15'
          Dst:             js_typed_array_constructor
        - Src:             'quickjs.c:57048,13'
          Dst:             max_int
        - Src:             'quickjs.c:57053,15'
          Dst:             js_typed_array_create
        - Src:             'quickjs.c:57054,9'
          Dst:             JS_FreeValue
    - functionName:    js_typed_array_constructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59306
      functionLinenumberEnd: 59384
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         52
      ICount:          278
      EdgeCount:       72
      CyclomaticComplexity: 22
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_IsUndefined
        - JS_ThrowRangeError
        - JS_ThrowTypeErrorDetachedArrayBuffer
        - JS_ToIndex
        - array_buffer_is_resizable
        - js_array_buffer_constructor1
        - js_create_from_ctor
        - js_typed_array_constructor_obj
        - js_typed_array_constructor_ta
        - typed_array_init
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:59315,13'
          Dst:             JS_ToIndex
        - Src:             'quickjs.c:59317,15'
          Dst:             js_create_from_ctor
        - Src:             'quickjs.c:59318,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:59320,18'
          Dst:             js_array_buffer_constructor1
        - Src:             'quickjs.c:59323,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:59330,19'
          Dst:             js_create_from_ctor
        - Src:             'quickjs.c:59331,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:59333,17'
          Dst:             JS_ToIndex
        - Src:             'quickjs.c:59338,17'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:59340,21'
          Dst:             JS_ThrowTypeErrorDetachedArrayBuffer
        - Src:             'quickjs.c:59345,21'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:59348,29'
          Dst:             array_buffer_is_resizable
        - Src:             'quickjs.c:59355,21'
          Dst:             JS_ToIndex
        - Src:             'quickjs.c:59358,21'
          Dst:             JS_ThrowTypeErrorDetachedArrayBuffer
        - Src:             'quickjs.c:59363,21'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:59371,24'
          Dst:             js_typed_array_constructor_ta
        - Src:             'quickjs.c:59374,24'
          Dst:             js_typed_array_constructor_obj
        - Src:             'quickjs.c:59367,22'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:59378,9'
          Dst:             typed_array_init
        - Src:             'quickjs.c:59382,5'
          Dst:             JS_FreeValue
    - functionName:    js_typed_array_create
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56997
      functionLinenumberEnd: 57021
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          80
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - JS_CallConstructor
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_ThrowTypeError
        - JS_ToLengthFree
        - js_typed_array_get_length_unsafe
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:57002,11'
          Dst:             JS_CallConstructor
        - Src:             'quickjs.c:57003,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:57006,15'
          Dst:             js_typed_array_get_length_unsafe
        - Src:             'quickjs.c:57011,40'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:57011,13'
          Dst:             JS_ToLengthFree
        - Src:             'quickjs.c:57014,13'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:57016,13'
          Dst:             JS_FreeValue
    - functionName:    array_buffer_is_resizable
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56417
      functionLinenumberEnd: 56418
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_typed_array_constructor_obj
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59194
      functionLinenumberEnd: 59242
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          177
      EdgeCount:       45
      CyclomaticComplexity: 14
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_GetPropertyUint32
        - JS_IsException
        - JS_IsNull
        - JS_IsUndefined
        - JS_SetPropertyUint32
        - js_array_buffer_constructor1
        - js_array_from_iterator
        - js_create_from_ctor
        - js_get_length64
        - typed_array_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:59201,11'
          Dst:             js_create_from_ctor
        - Src:             'quickjs.c:59202,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:59205,12'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:59206,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:59208,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:59208,35'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:59210,15'
          Dst:             js_array_from_iterator
        - Src:             'quickjs.c:59211,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:59212,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:59216,13'
          Dst:             js_get_length64
        - Src:             'quickjs.c:59218,15'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:59221,14'
          Dst:             js_array_buffer_constructor1
        - Src:             'quickjs.c:59224,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:59226,9'
          Dst:             typed_array_init
        - Src:             'quickjs.c:59230,15'
          Dst:             JS_GetPropertyUint32
        - Src:             'quickjs.c:59231,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:59233,13'
          Dst:             JS_SetPropertyUint32
        - Src:             'quickjs.c:59236,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:59239,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:59240,5'
          Dst:             JS_FreeValue
    - functionName:    js_array_from_iterator
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59153
      functionLinenumberEnd: 59188
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          112
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - JS_CreateDataPropertyUint32
        - JS_FreeValue
        - JS_GetIterator2
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IteratorNext
        - JS_NewArray
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:59159,11'
          Dst:             JS_NewArray
        - Src:             'quickjs.c:59160,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:59162,12'
          Dst:             JS_GetIterator2
        - Src:             'quickjs.c:59163,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:59165,19'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:59166,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:59170,15'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:59171,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:59175,13'
          Dst:             JS_CreateDataPropertyUint32
        - Src:             'quickjs.c:59170,15'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:59171,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:59179,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:59180,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:59184,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:59185,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:59186,5'
          Dst:             JS_FreeValue
    - functionName:    JS_CreateDataPropertyUint32
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10349
      functionLinenumberEnd: 10352
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_DefinePropertyValueValue
        - __JS_NewFloat64
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:10350,55'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:10350,12'
          Dst:             JS_DefinePropertyValueValue
    - functionName:    js_typed_array_slice
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57819
      functionLinenumberEnd: 57878
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          230
      EdgeCount:       54
      CyclomaticComplexity: 17
      functionsReached:
        - JS_FreeValue
        - JS_GetPropertyValue
        - JS_IsException
        - JS_IsUndefined
        - JS_SetPropertyValue
        - JS_ThrowTypeErrorArrayBufferOOB
        - JS_ToInt32Clamp
        - get_typed_array
        - js_typed_array___speciesCreate
        - max_int
        - min_int
        - slice_memcpy
        - typed_array_is_oob
        - validate_typed_array
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:57826,9'
          Dst:             get_typed_array
        - Src:             'quickjs.c:57829,9'
          Dst:             typed_array_is_oob
        - Src:             'quickjs.c:57830,16'
          Dst:             JS_ThrowTypeErrorArrayBufferOOB
        - Src:             'quickjs.c:57833,9'
          Dst:             JS_ToInt32Clamp
        - Src:             'quickjs.c:57836,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:57837,13'
          Dst:             JS_ToInt32Clamp
        - Src:             'quickjs.c:57840,13'
          Dst:             max_int
        - Src:             'quickjs.c:57846,11'
          Dst:             js_typed_array___speciesCreate
        - Src:             'quickjs.c:57847,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:57851,13'
          Dst:             validate_typed_array
        - Src:             'quickjs.c:57852,13'
          Dst:             validate_typed_array
        - Src:             'quickjs.c:57855,14'
          Dst:             get_typed_array
        - Src:             'quickjs.c:57856,17'
          Dst:             max_int
        - Src:             'quickjs.c:57857,17'
          Dst:             min_int
        - Src:             'quickjs.c:57859,13'
          Dst:             slice_memcpy
        - Src:             'quickjs.c:57864,23'
          Dst:             JS_GetPropertyValue
        - Src:             'quickjs.c:57865,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:57867,21'
          Dst:             JS_SetPropertyValue
        - Src:             'quickjs.c:57876,5'
          Dst:             JS_FreeValue
    - functionName:    js_typed_array_toReversed
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57789
      functionLinenumberEnd: 57803
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          50
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - get_typed_array
        - js_typed_array_constructor_ta
        - js_typed_array_reverse
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:57793,9'
          Dst:             get_typed_array
        - Src:             'quickjs.c:57796,11'
          Dst:             js_typed_array_constructor_ta
        - Src:             'quickjs.c:57798,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:57800,11'
          Dst:             js_typed_array_reverse
        - Src:             'quickjs.c:57801,5'
          Dst:             JS_FreeValue
    - functionName:    js_typed_array_reverse
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57726
      functionLinenumberEnd: 57785
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          176
      EdgeCount:       42
      CyclomaticComplexity: 10
      functionsReached:
        - JS_DupValue
        - abort
        - js_typed_array_get_length_unsafe
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs.c:57735,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:57730,11'
          Dst:             js_typed_array_get_length_unsafe
        - Src:             'quickjs.c:57781,13'
          Dst:             abort
        - Src:             'quickjs.c:57784,12'
          Dst:             JS_DupValue
    - functionName:    js_typed_array_find
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57294
      functionLinenumberEnd: 57352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          192
      EdgeCount:       55
      CyclomaticComplexity: 16
      functionsReached:
        - JS_Call
        - JS_FreeValue
        - JS_GetPropertyValue
        - JS_IsException
        - JS_ToBoolFree
        - check_function
        - js_typed_array_get_length_unsafe
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:57302,11'
          Dst:             js_typed_array_get_length_unsafe
        - Src:             'quickjs.c:57307,9'
          Dst:             check_function
        - Src:             'quickjs.c:57325,15'
          Dst:             JS_GetPropertyValue
        - Src:             'quickjs.c:57326,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:57331,15'
          Dst:             JS_Call
        - Src:             'quickjs.c:57332,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:57334,13'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:57336,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:57342,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:57350,5'
          Dst:             JS_FreeValue
    - functionName:    js_typed_array_fill
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57202
      functionLinenumberEnd: 57290
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         88
      ICount:          497
      EdgeCount:       119
      CyclomaticComplexity: 33
      functionsReached:
        - JS_DupValue
        - JS_IsUndefined
        - JS_ThrowTypeErrorArrayBufferOOB
        - JS_ToBigInt64
        - JS_ToFloat64
        - JS_ToInt32Clamp
        - JS_ToUint32
        - JS_ToUint8ClampFree
        - abort
        - get_typed_array
        - min_int
        - tofp16
        - typed_array_is_oob
      functionUses:    0
      BranchProfiles:
        - Branch String:   'quickjs.c:57265,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:57207,9'
          Dst:             get_typed_array
        - Src:             'quickjs.c:57210,9'
          Dst:             typed_array_is_oob
        - Src:             'quickjs.c:57211,16'
          Dst:             JS_ThrowTypeErrorArrayBufferOOB
        - Src:             'quickjs.c:57216,42'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:57216,13'
          Dst:             JS_ToUint8ClampFree
        - Src:             'quickjs.c:57221,13'
          Dst:             JS_ToUint32
        - Src:             'quickjs.c:57225,13'
          Dst:             JS_ToBigInt64
        - Src:             'quickjs.c:57229,13'
          Dst:             JS_ToFloat64
        - Src:             'quickjs.c:57232,19'
          Dst:             tofp16
        - Src:             'quickjs.c:57249,13'
          Dst:             JS_ToInt32Clamp
        - Src:             'quickjs.c:57254,22'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:57255,13'
          Dst:             JS_ToInt32Clamp
        - Src:             'quickjs.c:57259,9'
          Dst:             typed_array_is_oob
        - Src:             'quickjs.c:57260,16'
          Dst:             JS_ThrowTypeErrorArrayBufferOOB
        - Src:             'quickjs.c:57263,13'
          Dst:             min_int
        - Src:             'quickjs.c:57287,9'
          Dst:             abort
        - Src:             'quickjs.c:57289,12'
          Dst:             JS_DupValue
    - functionName:    js_typed_array_copyWithin
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57161
      functionLinenumberEnd: 57198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          153
      EdgeCount:       33
      CyclomaticComplexity: 11
      functionsReached:
        - JS_DupValue
        - JS_IsUndefined
        - JS_ThrowTypeErrorArrayBufferOOB
        - JS_ToInt32Clamp
        - get_typed_array
        - max_int
        - min_int
        - typed_array_is_oob
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:57165,9'
          Dst:             get_typed_array
        - Src:             'quickjs.c:57168,9'
          Dst:             typed_array_is_oob
        - Src:             'quickjs.c:57169,16'
          Dst:             JS_ThrowTypeErrorArrayBufferOOB
        - Src:             'quickjs.c:57172,9'
          Dst:             JS_ToInt32Clamp
        - Src:             'quickjs.c:57175,9'
          Dst:             JS_ToInt32Clamp
        - Src:             'quickjs.c:57179,22'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:57180,13'
          Dst:             JS_ToInt32Clamp
        - Src:             'quickjs.c:57184,9'
          Dst:             typed_array_is_oob
        - Src:             'quickjs.c:57185,16'
          Dst:             JS_ThrowTypeErrorArrayBufferOOB
        - Src:             'quickjs.c:57188,32'
          Dst:             max_int
        - Src:             'quickjs.c:57189,13'
          Dst:             min_int
        - Src:             'quickjs.c:57190,13'
          Dst:             min_int
        - Src:             'quickjs.c:57197,12'
          Dst:             JS_DupValue
    - functionName:    js_typed_array_get_toStringTag
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56815
      functionLinenumberEnd: 56824
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          58
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - JS_AtomToString
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56823,12'
          Dst:             JS_AtomToString
    - functionName:    js_create_typed_array_iterator
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56989
      functionLinenumberEnd: 56993
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - js_create_array_iterator
        - validate_typed_array
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56990,9'
          Dst:             validate_typed_array
        - Src:             'quickjs.c:56992,12'
          Dst:             js_create_array_iterator
    - functionName:    js_typed_array_set
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56979
      functionLinenumberEnd: 56985
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - js_typed_array_set_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56984,12'
          Dst:             js_typed_array_set_internal
    - functionName:    js_typed_array_get_byteOffset
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56765
      functionLinenumberEnd: 56775
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          56
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - __JS_NewFloat64
        - get_typed_array
        - typed_array_is_oob
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56768,9'
          Dst:             get_typed_array
        - Src:             'quickjs.c:56771,9'
          Dst:             typed_array_is_oob
        - Src:             'quickjs.c:56774,12'
          Dst:             __JS_NewFloat64
    - functionName:    js_typed_array_get_byteLength
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56746
      functionLinenumberEnd: 56761
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          92
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - __JS_NewFloat64
        - get_typed_array
        - typed_array_is_oob
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56751,9'
          Dst:             get_typed_array
        - Src:             'quickjs.c:56754,9'
          Dst:             typed_array_is_oob
        - Src:             'quickjs.c:56758,16'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:56760,12'
          Dst:             __JS_NewFloat64
    - functionName:    js_typed_array_with
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56936
      functionLinenumberEnd: 56974
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          135
      EdgeCount:       36
      CyclomaticComplexity: 12
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_SetPropertyInt64
        - JS_ThrowRangeError
        - JS_ThrowTypeErrorDetachedArrayBuffer
        - JS_ToInt64Sat
        - JS_ToPrimitive
        - get_typed_array
        - js_typed_array_constructor_ta
        - typed_array_is_oob
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56941,9'
          Dst:             get_typed_array
        - Src:             'quickjs.c:56944,9'
          Dst:             typed_array_is_oob
        - Src:             'quickjs.c:56945,16'
          Dst:             JS_ThrowTypeErrorDetachedArrayBuffer
        - Src:             'quickjs.c:56948,9'
          Dst:             JS_ToInt64Sat
        - Src:             'quickjs.c:56954,11'
          Dst:             JS_ToPrimitive
        - Src:             'quickjs.c:56955,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:56958,9'
          Dst:             typed_array_is_oob
        - Src:             'quickjs.c:56959,16'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:56963,11'
          Dst:             js_typed_array_constructor_ta
        - Src:             'quickjs.c:56965,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:56966,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:56969,9'
          Dst:             JS_SetPropertyInt64
        - Src:             'quickjs.c:56970,9'
          Dst:             JS_FreeValue
    - functionName:    JS_SetPropertyInt64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9680
      functionLinenumberEnd: 9697
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          39
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeAtom
        - JS_FreeValue
        - JS_NewAtomInt64
        - JS_SetProperty
        - JS_SetPropertyValue
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:9686,16'
          Dst:             JS_SetPropertyValue
        - Src:             'quickjs.c:9689,12'
          Dst:             JS_NewAtomInt64
        - Src:             'quickjs.c:9691,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9694,11'
          Dst:             JS_SetProperty
        - Src:             'quickjs.c:9695,5'
          Dst:             JS_FreeAtom
    - functionName:    JS_NewAtomInt64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3087
      functionLinenumberEnd: 3101
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_IsException
        - __JS_NewAtom
        - i64toa
        - js_new_string8_len
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3094,15'
          Dst:             i64toa
        - Src:             'quickjs.c:3095,15'
          Dst:             js_new_string8_len
        - Src:             'quickjs.c:3096,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:3098,16'
          Dst:             __JS_NewAtom
    - functionName:    js_typed_array_at
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56909
      functionLinenumberEnd: 56932
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          89
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - JS_GetPropertyInt64
        - JS_ThrowTypeErrorDetachedArrayBuffer
        - JS_ToInt64Sat
        - get_typed_array
        - typed_array_is_oob
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56913,9'
          Dst:             get_typed_array
        - Src:             'quickjs.c:56917,9'
          Dst:             typed_array_is_oob
        - Src:             'quickjs.c:56918,16'
          Dst:             JS_ThrowTypeErrorDetachedArrayBuffer
        - Src:             'quickjs.c:56922,9'
          Dst:             JS_ToInt64Sat
        - Src:             'quickjs.c:56931,12'
          Dst:             JS_GetPropertyInt64
    - functionName:    JS_GetPropertyInt64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8746
      functionLinenumberEnd: 8761
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          46
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeAtom
        - JS_GetPropertyInternal
        - JS_GetPropertyValue
        - JS_NewAtomInt64
      functionUses:    21
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:8752,16'
          Dst:             JS_GetPropertyValue
        - Src:             'quickjs.c:8754,12'
          Dst:             JS_NewAtomInt64
        - Src:             'quickjs.c:8758,11'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:8759,5'
          Dst:             JS_FreeAtom
    - functionName:    js_typed_array_get_length
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56724
      functionLinenumberEnd: 56730
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_typed_array
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56726,9'
          Dst:             get_typed_array
    - functionName:    js_typed_array_of
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57140
      functionLinenumberEnd: 57157
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          76
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_SetPropertyUint32
        - js_typed_array_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:57146,11'
          Dst:             js_typed_array_create
        - Src:             'quickjs.c:57147,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:57151,47'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:57151,13'
          Dst:             JS_SetPropertyUint32
        - Src:             'quickjs.c:57152,13'
          Dst:             JS_FreeValue
    - functionName:    js_typed_array_from
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57061
      functionLinenumberEnd: 57136
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          295
      EdgeCount:       69
      CyclomaticComplexity: 21
      functionsReached:
        - JS_Call
        - JS_FreeValue
        - JS_GetPropertyInt64
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsFunction
        - JS_IsNull
        - JS_IsUndefined
        - JS_SetPropertyInt64
        - JS_ThrowTypeError
        - JS_ToObject
        - __JS_NewFloat64
        - check_function
        - js_array_from_iterator
        - js_get_length64
        - js_typed_array_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:57078,14'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:57079,17'
          Dst:             check_function
        - Src:             'quickjs.c:57086,12'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:57087,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:57089,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:57089,35'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:57091,14'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:57092,13'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:57095,15'
          Dst:             js_array_from_iterator
        - Src:             'quickjs.c:57096,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:57100,15'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:57101,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:57103,13'
          Dst:             js_get_length64
        - Src:             'quickjs.c:57106,9'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:57108,9'
          Dst:             js_typed_array_create
        - Src:             'quickjs.c:57109,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:57110,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:57113,13'
          Dst:             JS_GetPropertyInt64
        - Src:             'quickjs.c:57114,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:57119,18'
          Dst:             JS_Call
        - Src:             'quickjs.c:57120,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:57122,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:57125,13'
          Dst:             JS_SetPropertyInt64
        - Src:             'quickjs.c:57130,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:57133,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:57134,5'
          Dst:             JS_FreeValue
    - functionName:    js_array_buffer_transfer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56426
      functionLinenumberEnd: 56500
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          218
      EdgeCount:       59
      CyclomaticComplexity: 19
      functionsReached:
        - JS_DetachArrayBuffer
        - JS_GetOpaque2
        - JS_IsUndefined
        - JS_ThrowRangeError
        - JS_ThrowTypeError
        - JS_ThrowTypeErrorDetachedArrayBuffer
        - JS_ToIndex
        - array_buffer_is_resizable
        - js_array_buffer_constructor2
        - js_array_buffer_constructor3
        - js_array_buffer_update_typed_arrays
        - js_mallocz
        - js_realloc
        - min_int
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56430,12'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:56434,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:56435,21'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:56437,14'
          Dst:             JS_ToIndex
        - Src:             'quickjs.c:56440,16'
          Dst:             JS_ThrowTypeErrorDetachedArrayBuffer
        - Src:             'quickjs.c:56443,13'
          Dst:             array_buffer_is_resizable
        - Src:             'quickjs.c:56446,24'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:56454,9'
          Dst:             JS_DetachArrayBuffer
        - Src:             'quickjs.c:56455,16'
          Dst:             js_array_buffer_constructor2
        - Src:             'quickjs.c:56469,24'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:56474,26'
          Dst:             js_mallocz
        - Src:             'quickjs.c:56477,36'
          Dst:             min_int
        - Src:             'quickjs.c:56482,26'
          Dst:             js_realloc
        - Src:             'quickjs.c:56494,9'
          Dst:             js_array_buffer_update_typed_arrays
        - Src:             'quickjs.c:56495,16'
          Dst:             js_array_buffer_constructor3
    - functionName:    JS_DetachArrayBuffer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56369
      functionLinenumberEnd: 56380
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          54
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_GetOpaque
        - js_array_buffer_update_typed_arrays
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56370,27'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:56379,5'
          Dst:             js_array_buffer_update_typed_arrays
    - functionName:    js_array_buffer_update_typed_arrays
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56326
      functionLinenumberEnd: 56366
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          130
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_array_buffer_slice
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56555
      functionLinenumberEnd: 56616
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          214
      EdgeCount:       54
      CyclomaticComplexity: 17
      functionsReached:
        - JS_CallConstructor
        - JS_FreeValue
        - JS_GetOpaque2
        - JS_IsException
        - JS_IsUndefined
        - JS_SpeciesConstructor
        - JS_ThrowTypeError
        - JS_ThrowTypeErrorDetachedArrayBuffer
        - JS_ToInt64Clamp
        - __JS_NewFloat64
        - js_array_buffer_constructor2
        - js_same_value
        - max_int64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56560,12'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:56564,16'
          Dst:             JS_ThrowTypeErrorDetachedArrayBuffer
        - Src:             'quickjs.c:56567,9'
          Dst:             JS_ToInt64Clamp
        - Src:             'quickjs.c:56571,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:56572,13'
          Dst:             JS_ToInt64Clamp
        - Src:             'quickjs.c:56575,15'
          Dst:             max_int64
        - Src:             'quickjs.c:56576,12'
          Dst:             JS_SpeciesConstructor
        - Src:             'quickjs.c:56577,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:56579,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:56580,19'
          Dst:             js_array_buffer_constructor2
        - Src:             'quickjs.c:56584,19'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:56585,19'
          Dst:             JS_CallConstructor
        - Src:             'quickjs.c:56586,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:56587,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:56589,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:56591,16'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:56594,9'
          Dst:             js_same_value
        - Src:             'quickjs.c:56595,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:56599,9'
          Dst:             JS_ThrowTypeErrorDetachedArrayBuffer
        - Src:             'quickjs.c:56603,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:56608,9'
          Dst:             JS_ThrowTypeErrorDetachedArrayBuffer
        - Src:             'quickjs.c:56614,5'
          Dst:             JS_FreeValue
    - functionName:    max_int64
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          16
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_array_buffer_resize
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56504
      functionLinenumberEnd: 56550
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          135
      EdgeCount:       40
      CyclomaticComplexity: 13
      functionsReached:
        - JS_GetOpaque2
        - JS_ThrowRangeError
        - JS_ThrowTypeError
        - JS_ThrowTypeErrorDetachedArrayBuffer
        - JS_ToInt64
        - array_buffer_is_resizable
        - js_array_buffer_update_typed_arrays
        - js_realloc
        - max_int
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56509,12'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:56512,9'
          Dst:             JS_ToInt64
        - Src:             'quickjs.c:56515,16'
          Dst:             JS_ThrowTypeErrorDetachedArrayBuffer
        - Src:             'quickjs.c:56516,10'
          Dst:             array_buffer_is_resizable
        - Src:             'quickjs.c:56517,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:56520,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:56523,16'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:56540,44'
          Dst:             max_int
        - Src:             'quickjs.c:56540,16'
          Dst:             js_realloc
        - Src:             'quickjs.c:56548,5'
          Dst:             js_array_buffer_update_typed_arrays
    - functionName:    JS_ToInt64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12907
      functionLinenumberEnd: 12908
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
        - JS_ToInt64Free
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:12908,38'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:12908,12'
          Dst:             JS_ToInt64Free
    - functionName:    JS_ToInt64Free
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12856
      functionLinenumberEnd: 12904
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          90
      EdgeCount:       23
      CyclomaticComplexity: 5
      functionsReached:
        - JS_IsException
        - JS_ToNumberFree
      functionUses:    3
      BranchProfiles:
        - Branch String:   'quickjs.c:12862,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:12895,15'
          Dst:             JS_ToNumberFree
        - Src:             'quickjs.c:12896,13'
          Dst:             JS_IsException
    - functionName:    js_array_buffer_get_detached
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56283
      functionLinenumberEnd: 56290
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          41
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_GetOpaque2
        - JS_ThrowTypeError
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56284,27'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:56288,16'
          Dst:             JS_ThrowTypeError
    - functionName:    js_array_buffer_get_resizable
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56318
      functionLinenumberEnd: 56323
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_GetOpaque2
        - array_buffer_is_resizable
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56319,27'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:56322,28'
          Dst:             array_buffer_is_resizable
    - functionName:    js_array_buffer_get_maxByteLength
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56306
      functionLinenumberEnd: 56313
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          70
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - JS_GetOpaque2
        - __JS_NewFloat64
        - array_buffer_is_resizable
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56307,27'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:56310,9'
          Dst:             array_buffer_is_resizable
        - Src:             'quickjs.c:56311,16'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:56312,12'
          Dst:             __JS_NewFloat64
    - functionName:    js_array_buffer_get_byteLength
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56295
      functionLinenumberEnd: 56301
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          38
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_GetOpaque2
        - __JS_NewFloat64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56296,27'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:56300,12'
          Dst:             __JS_NewFloat64
    - functionName:    js_array_buffer_isView
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56251
      functionLinenumberEnd: 56263
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          38
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_array_buffer_constructor0
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56165
      functionLinenumberEnd: 56195
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          126
      EdgeCount:       33
      CyclomaticComplexity: 11
      functionsReached:
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsObject
        - JS_IsUndefined
        - JS_ThrowRangeError
        - JS_ToIndex
        - JS_ToInt64Free
        - JS_ToObject
        - js_array_buffer_constructor2
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56170,10'
          Dst:             JS_ToIndex
        - Src:             'quickjs.c:56174,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:56176,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:56177,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:56179,11'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:56180,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:56181,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:56183,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:56185,9'
          Dst:             JS_ToInt64Free
        - Src:             'quickjs.c:56189,16'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:56193,12'
          Dst:             js_array_buffer_constructor2
    - functionName:    js_thisBigIntValue
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55546
      functionLinenumberEnd: 55558
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          65
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_DupValue
        - JS_IsBigInt
        - JS_ThrowTypeError
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:55547,9'
          Dst:             JS_IsBigInt
        - Src:             'quickjs.c:55548,16'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:55553,17'
          Dst:             JS_IsBigInt
        - Src:             'quickjs.c:55554,24'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:55557,12'
          Dst:             JS_ThrowTypeError
    - functionName:    JS_IsBigInt
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 618
      functionLinenumberEnd: 620
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_bigint_valueOf
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55587
      functionLinenumberEnd: 55588
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_thisBigIntValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:55588,12'
          Dst:             js_thisBigIntValue
    - functionName:    js_bigint_toString
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55562
      functionLinenumberEnd: 55583
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          68
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_IsUndefined
        - js_bigint_to_string1
        - js_get_radix
        - js_thisBigIntValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:55567,11'
          Dst:             js_thisBigIntValue
        - Src:             'quickjs.c:55568,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55570,22'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:55573,16'
          Dst:             js_get_radix
        - Src:             'quickjs.c:55577,11'
          Dst:             js_bigint_to_string1
        - Src:             'quickjs.c:55578,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:55581,5'
          Dst:             JS_FreeValue
    - functionName:    js_get_radix
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44255
      functionLinenumberEnd: 44264
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          44
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_ThrowRangeError
        - JS_ToInt32Sat
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44257,9'
          Dst:             JS_ToInt32Sat
        - Src:             'quickjs.c:44260,9'
          Dst:             JS_ThrowRangeError
    - functionName:    JS_ToBigInt
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14286
      functionLinenumberEnd: 14287
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
        - JS_ToBigIntFree
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:14287,33'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:14287,12'
          Dst:             JS_ToBigIntFree
    - functionName:    js_bigint_asUintN
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55594
      functionLinenumberEnd: 55652
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          266
      EdgeCount:       66
      CyclomaticComplexity: 20
      functionsReached:
        - JS_CompactBigInt
        - JS_FreeValue
        - JS_IsException
        - JS_ToBigInt
        - JS_ToIndex
        - __JS_NewShortBigInt
        - js_bigint_new
        - js_bigint_normalize
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:55598,9'
          Dst:             JS_ToIndex
        - Src:             'quickjs.c:55600,9'
          Dst:             JS_ToBigInt
        - Src:             'quickjs.c:55601,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55604,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:55605,15'
          Dst:             __JS_NewShortBigInt
        - Src:             'quickjs.c:55620,19'
          Dst:             __JS_NewShortBigInt
        - Src:             'quickjs.c:55630,17'
          Dst:             js_bigint_new
        - Src:             'quickjs.c:55646,17'
          Dst:             js_bigint_normalize
        - Src:             'quickjs.c:55647,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:55648,19'
          Dst:             JS_CompactBigInt
        - Src:             'quickjs.c:55632,17'
          Dst:             JS_FreeValue
    - functionName:    js_bigint_set_si64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11215
      functionLinenumberEnd: 11217
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_bigint_set_si
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:11217,12'
          Dst:             js_bigint_set_si
    - functionName:    js_bigint_from_float64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11893
      functionLinenumberEnd: 11937
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          98
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - float64_as_uint64
        - js_bigint_new_si
        - js_bigint_set_si64
        - js_bigint_shl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:11894,18'
          Dst:             float64_as_uint64
        - Src:             'quickjs.c:11911,16'
          Dst:             js_bigint_new_si
        - Src:             'quickjs.c:11934,9'
          Dst:             js_bigint_set_si64
        - Src:             'quickjs.c:11936,12'
          Dst:             js_bigint_shl
    - functionName:    JS_ToBigIntCtorFree
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55487
      functionLinenumberEnd: 55534
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          125
      EdgeCount:       29
      CyclomaticComplexity: 5
      functionsReached:
        - JS_CompactBigInt
        - JS_FreeValue
        - JS_IsException
        - JS_NewBigInt64
        - JS_StringToBigIntErr
        - JS_ThrowRangeError
        - JS_ThrowTypeError
        - JS_ToPrimitiveFree
        - js_bigint_from_float64
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs.c:55492,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:55495,15'
          Dst:             JS_NewBigInt64
        - Src:             'quickjs.c:55505,17'
          Dst:             js_bigint_from_float64
        - Src:             'quickjs.c:55510,27'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:55512,27'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:55514,23'
          Dst:             JS_CompactBigInt
        - Src:             'quickjs.c:55520,15'
          Dst:             JS_StringToBigIntErr
        - Src:             'quickjs.c:55523,15'
          Dst:             JS_ToPrimitiveFree
        - Src:             'quickjs.c:55524,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55530,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:55531,16'
          Dst:             JS_ThrowTypeError
    - functionName:    js_bigint_constructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55539
      functionLinenumberEnd: 55543
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_DupValue
        - JS_IsUndefined
        - JS_ThrowTypeErrorNotAConstructor
        - JS_ToBigIntCtorFree
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:55540,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:55541,16'
          Dst:             JS_ThrowTypeErrorNotAConstructor
        - Src:             'quickjs.c:55542,37'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:55542,12'
          Dst:             JS_ToBigIntCtorFree
    - functionName:    free_generator_stack
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20481
      functionLinenumberEnd: 20483
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - free_generator_stack_rt
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20482,5'
          Dst:             free_generator_stack_rt
    - functionName:    free_generator_stack_rt
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20460
      functionLinenumberEnd: 20468
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          35
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - async_func_free
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20464,9'
          Dst:             async_func_free
    - functionName:    js_generator_next
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20504
      functionLinenumberEnd: 20581
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          198
      EdgeCount:       36
      CyclomaticComplexity: 6
      functionsReached:
        - JS_DupValue
        - JS_GetOpaque
        - JS_Throw
        - JS_ThrowTypeError
        - __assert_fail
        - async_func_resume
        - free_generator_stack
      functionUses:    0
      BranchProfiles:
        - Branch String:   'quickjs.c:20512,5'
          Branch Sides:    []
        - Branch String:   'quickjs.c:20563,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:20505,26'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:20511,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:20519,13'
          Dst:             free_generator_stack
        - Src:             'quickjs.c:20527,15'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:20530,13'
          Dst:             JS_Throw
        - Src:             'quickjs.c:20540,20'
          Dst:             async_func_resume
        - Src:             'quickjs.c:20544,13'
          Dst:             free_generator_stack
        - Src:             'quickjs.c:20547,13'
          Dst:             __assert_fail
        - Src:             'quickjs.c:20569,19'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:20572,33'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:20572,19'
          Dst:             JS_Throw
        - Src:             'quickjs.c:20577,15'
          Dst:             JS_ThrowTypeError
    - functionName:    js_thisSymbolValue
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50892
      functionLinenumberEnd: 50904
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          64
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_DupValue
        - JS_ThrowTypeError
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:50894,16'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:50900,24'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:50903,12'
          Dst:             JS_ThrowTypeError
    - functionName:    js_symbol_get_description
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50926
      functionLinenumberEnd: 50941
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          63
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - JS_AtomToString
        - JS_FreeValue
        - JS_IsException
        - js_get_atom_index
        - js_thisSymbolValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:50930,11'
          Dst:             js_thisSymbolValue
        - Src:             'quickjs.c:50931,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50937,36'
          Dst:             js_get_atom_index
        - Src:             'quickjs.c:50937,15'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:50939,5'
          Dst:             JS_FreeValue
    - functionName:    js_symbol_valueOf
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50921
      functionLinenumberEnd: 50922
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_thisSymbolValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:50922,12'
          Dst:             js_thisSymbolValue
    - functionName:    js_symbol_toString
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50908
      functionLinenumberEnd: 50917
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - js_string_constructor
        - js_thisSymbolValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:50910,11'
          Dst:             js_thisSymbolValue
        - Src:             'quickjs.c:50911,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50914,11'
          Dst:             js_string_constructor
        - Src:             'quickjs.c:50915,5'
          Dst:             JS_FreeValue
    - functionName:    js_string_constructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44573
      functionLinenumberEnd: 44601
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          105
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - JS_AtomToString
        - JS_ConcatString3
        - JS_DefinePropertyValue
        - JS_FreeValue
        - JS_IsException
        - JS_IsSymbol
        - JS_IsUndefined
        - JS_SetObjectData
        - JS_ToString
        - js_create_from_ctor
        - js_get_atom_index
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44576,15'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:44587,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:44578,13'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:44578,43'
          Dst:             JS_IsSymbol
        - Src:             'quickjs.c:44580,73'
          Dst:             js_get_atom_index
        - Src:             'quickjs.c:44580,52'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:44580,19'
          Dst:             JS_ConcatString3
        - Src:             'quickjs.c:44582,19'
          Dst:             JS_ToString
        - Src:             'quickjs.c:44584,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:44590,15'
          Dst:             js_create_from_ctor
        - Src:             'quickjs.c:44591,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:44592,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:44594,13'
          Dst:             JS_SetObjectData
        - Src:             'quickjs.c:44595,13'
          Dst:             JS_DefinePropertyValue
    - functionName:    JS_IsSymbol
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 655
      functionLinenumberEnd: 656
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_symbol_keyFor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50965
      functionLinenumberEnd: 50974
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          48
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_DupValue
        - JS_IsSymbol
        - JS_ThrowTypeError
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:50968,10'
          Dst:             JS_IsSymbol
        - Src:             'quickjs.c:50969,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:50973,12'
          Dst:             JS_DupValue
    - functionName:    js_symbol_for
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50954
      functionLinenumberEnd: 50961
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_IsException
        - JS_NewSymbol
        - JS_ToString
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:50957,11'
          Dst:             JS_ToString
        - Src:             'quickjs.c:50958,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50960,12'
          Dst:             JS_NewSymbol
    - functionName:    js_reflect_setPrototypeOf
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49842
      functionLinenumberEnd: 49849
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_SetPrototypeInternal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:49844,11'
          Dst:             JS_SetPrototypeInternal
    - functionName:    js_reflect_set
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49814
      functionLinenumberEnd: 49838
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          81
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_DupValue
        - JS_FreeAtom
        - JS_SetPropertyInternal
        - JS_ThrowTypeErrorNotAnObject
        - JS_ValueToAtom
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:49827,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:49828,12'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:49832,34'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:49831,11'
          Dst:             JS_SetPropertyInternal
        - Src:             'quickjs.c:49833,5'
          Dst:             JS_FreeAtom
    - functionName:    js_reflect_ownKeys
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49853
      functionLinenumberEnd: 49859
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_GetOwnPropertyNames2
        - JS_ThrowTypeErrorNotAnObject
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:49855,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:49856,12'
          Dst:             JS_GetOwnPropertyNames2
    - functionName:    JS_GetOwnPropertyNames2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39790
      functionLinenumberEnd: 39865
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         49
      ICount:          250
      EdgeCount:       65
      CyclomaticComplexity: 18
      functionsReached:
        - JS_AtomToValue
        - JS_CreateDataPropertyUint32
        - JS_FreePropertyEnum
        - JS_FreeValue
        - JS_GetOwnPropertyInternal
        - JS_GetOwnPropertyNamesInternal
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_NewArray
        - JS_ToObject
        - js_free_desc
      functionUses:    4
      BranchProfiles:
        - Branch String:   'quickjs.c:39823,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:39798,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:39799,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39802,9'
          Dst:             JS_GetOwnPropertyNamesInternal
        - Src:             'quickjs.c:39804,9'
          Dst:             JS_NewArray
        - Src:             'quickjs.c:39805,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39814,19'
          Dst:             JS_GetOwnPropertyInternal
        - Src:             'quickjs.c:39819,13'
          Dst:             js_free_desc
        - Src:             'quickjs.c:39826,19'
          Dst:             JS_AtomToValue
        - Src:             'quickjs.c:39827,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39831,19'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:39832,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39836,19'
          Dst:             JS_NewArray
        - Src:             'quickjs.c:39837,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39839,19'
          Dst:             JS_AtomToValue
        - Src:             'quickjs.c:39840,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39842,17'
          Dst:             JS_CreateDataPropertyUint32
        - Src:             'quickjs.c:39844,21'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:39845,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39847,17'
          Dst:             JS_CreateDataPropertyUint32
        - Src:             'quickjs.c:39851,13'
          Dst:             JS_CreateDataPropertyUint32
        - Src:             'quickjs.c:39857,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:39859,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:39862,5'
          Dst:             JS_FreePropertyEnum
        - Src:             'quickjs.c:39863,5'
          Dst:             JS_FreeValue
    - functionName:    js_reflect_has
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49792
      functionLinenumberEnd: 49810
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          55
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeAtom
        - JS_HasProperty
        - JS_ThrowTypeErrorNotAnObject
        - JS_ValueToAtom
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:49800,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:49801,12'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:49804,11'
          Dst:             JS_HasProperty
        - Src:             'quickjs.c:49805,5'
          Dst:             JS_FreeAtom
    - functionName:    js_reflect_get
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49769
      functionLinenumberEnd: 49788
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          68
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeAtom
        - JS_GetPropertyInternal
        - JS_ThrowTypeErrorNotAnObject
        - JS_ValueToAtom
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:49777,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:49782,12'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:49785,11'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:49786,5'
          Dst:             JS_FreeAtom
    - functionName:    js_reflect_deleteProperty
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49748
      functionLinenumberEnd: 49765
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          55
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - JS_DeleteProperty
        - JS_FreeAtom
        - JS_ThrowTypeErrorNotAnObject
        - JS_ValueToAtom
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:49755,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:49756,12'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:49759,11'
          Dst:             JS_DeleteProperty
        - Src:             'quickjs.c:49760,5'
          Dst:             JS_FreeAtom
    - functionName:    js_reflect_construct
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49724
      functionLinenumberEnd: 49744
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          71
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_CallConstructor2
        - JS_IsConstructor
        - JS_ThrowTypeErrorNotAConstructor
        - build_arg_list
        - free_arg_list
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:49733,14'
          Dst:             JS_IsConstructor
        - Src:             'quickjs.c:49734,20'
          Dst:             JS_ThrowTypeErrorNotAConstructor
        - Src:             'quickjs.c:49738,11'
          Dst:             build_arg_list
        - Src:             'quickjs.c:49741,11'
          Dst:             JS_CallConstructor2
        - Src:             'quickjs.c:49742,5'
          Dst:             free_arg_list
    - functionName:    js_reflect_apply
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49718
      functionLinenumberEnd: 49719
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_function_apply
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:49719,12'
          Dst:             js_function_apply
    - functionName:    sum_precise_renorm
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46442
      functionLinenumberEnd: 46456
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          100
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sum_precise_get_result
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46522
      functionLinenumberEnd: 46620
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         64
      ICount:          340
      EdgeCount:       85
      CyclomaticComplexity: 23
      functionsReached:
        - clz64
        - sum_precise_renorm
        - uint64_as_float64
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs.c:46526,18'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:46538,5'
          Dst:             sum_precise_renorm
        - Src:             'quickjs.c:46579,16'
          Dst:             uint64_as_float64
        - Src:             'quickjs.c:46584,13'
          Dst:             clz64
        - Src:             'quickjs.c:46615,16'
          Dst:             uint64_as_float64
        - Src:             'quickjs.c:46618,16'
          Dst:             uint64_as_float64
    - functionName:    sum_precise_add
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46459
      functionLinenumberEnd: 46519
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         34
      ICount:          182
      EdgeCount:       47
      CyclomaticComplexity: 15
      functionsReached:
        - float64_as_uint64
        - max_int
        - sum_precise_renorm
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:46464,9'
          Dst:             float64_as_uint64
        - Src:             'quickjs.c:46512,22'
          Dst:             max_int
        - Src:             'quickjs.c:46516,13'
          Dst:             sum_precise_renorm
    - functionName:    sum_precise_init
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46434
      functionLinenumberEnd: 46439
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    xorshift64star
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46667
      functionLinenumberEnd: 46674
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_fmin
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46230
      functionLinenumberEnd: 46240
      functionDepth:   0
      returnType:      double
      argCount:        2
      argTypes:
        - double
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          27
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_fmax
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46244
      functionLinenumberEnd: 46254
      functionDepth:   0
      returnType:      double
      argCount:        2
      argTypes:
        - double
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          27
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_math_sumPrecise
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46624
      functionLinenumberEnd: 46663
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          121
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - JS_FreeValue
        - JS_GetIterator
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IteratorClose
        - JS_IteratorNext
        - JS_ThrowTypeError
        - __JS_NewFloat64
        - sum_precise_add
        - sum_precise_get_result
        - sum_precise_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:46631,12'
          Dst:             JS_GetIterator
        - Src:             'quickjs.c:46632,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:46635,12'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:46636,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:46638,5'
          Dst:             sum_precise_init
        - Src:             'quickjs.c:46640,16'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:46641,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:46651,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:46652,13'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:46653,13'
          Dst:             JS_IteratorClose
        - Src:             'quickjs.c:46656,9'
          Dst:             sum_precise_add
        - Src:             'quickjs.c:46640,16'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:46641,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:46658,32'
          Dst:             sum_precise_get_result
        - Src:             'quickjs.c:46658,11'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:46660,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:46661,5'
          Dst:             JS_FreeValue
    - functionName:    js_math_clz32
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46398
      functionLinenumberEnd: 46408
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          43
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_ToUint32
        - clz32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:46401,9'
          Dst:             JS_ToUint32
        - Src:             'quickjs.c:46406,13'
          Dst:             clz32
    - functionName:    js_math_imul
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46383
      functionLinenumberEnd: 46394
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          52
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_ToUint32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:46387,9'
          Dst:             JS_ToUint32
        - Src:             'quickjs.c:46389,9'
          Dst:             JS_ToUint32
    - functionName:    js_math_fround
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46377
      functionLinenumberEnd: 46378
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_math_f16round
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46372
      functionLinenumberEnd: 46373
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fromfp16
        - tofp16
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:46373,21'
          Dst:             tofp16
        - Src:             'quickjs.c:46373,12'
          Dst:             fromfp16
    - functionName:    js_math_random
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46689
      functionLinenumberEnd: 46697
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __JS_NewFloat64
        - xorshift64star
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:46693,9'
          Dst:             xorshift64star
        - Src:             'quickjs.c:46696,12'
          Dst:             __JS_NewFloat64
    - functionName:    js_math_hypot
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46349
      functionLinenumberEnd: 46369
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          125
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - JS_ToFloat64
        - __JS_NewFloat64
        - hypot
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:46355,13'
          Dst:             JS_ToFloat64
        - Src:             'quickjs.c:46362,21'
          Dst:             JS_ToFloat64
        - Src:             'quickjs.c:46364,21'
          Dst:             hypot
        - Src:             'quickjs.c:46368,12'
          Dst:             __JS_NewFloat64
    - functionName:    hypot
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        2
      argTypes:
        - double
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_math_sign
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46310
      functionLinenumberEnd: 46317
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          27
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_math_round
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46320
      functionLinenumberEnd: 46344
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          55
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_math_min_max
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46258
      functionLinenumberEnd: 46307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          214
      EdgeCount:       61
      CyclomaticComplexity: 18
      functionsReached:
        - JS_ToFloat64
        - __JS_NewFloat64
        - js_fmax
        - js_fmin
        - max_int
        - min_int
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:46265,16'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:46279,22'
          Dst:             max_int
        - Src:             'quickjs.c:46281,22'
          Dst:             min_int
        - Src:             'quickjs.c:46286,13'
          Dst:             JS_ToFloat64
        - Src:             'quickjs.c:46291,17'
          Dst:             JS_ToFloat64
        - Src:             'quickjs.c:46298,29'
          Dst:             js_fmax
        - Src:             'quickjs.c:46300,29'
          Dst:             js_fmin
        - Src:             'quickjs.c:46305,16'
          Dst:             __JS_NewFloat64
    - functionName:    js_string_iterator_next
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46044
      functionLinenumberEnd: 46075
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          89
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_FreeValue
        - JS_GetOpaque2
        - JS_IsUndefined
        - js_new_string16_len
        - js_new_string_char
        - string_getc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:46049,10'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:46054,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:46059,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:46067,9'
          Dst:             string_getc
        - Src:             'quickjs.c:46071,16'
          Dst:             js_new_string_char
        - Src:             'quickjs.c:46073,16'
          Dst:             js_new_string16_len
    - functionName:    string_getc
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3763
      functionLinenumberEnd: 3779
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          72
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - from_surrogate
        - is_hi_surrogate
        - is_lo_surrogate
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3768,13'
          Dst:             is_hi_surrogate
        - Src:             'quickjs.c:3770,17'
          Dst:             is_lo_surrogate
        - Src:             'quickjs.c:3771,21'
          Dst:             from_surrogate
    - functionName:    string_prevc
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45748
      functionLinenumberEnd: 45769
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          78
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - from_surrogate
        - is_hi_surrogate
        - is_lo_surrogate
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:45757,13'
          Dst:             is_lo_surrogate
        - Src:             'quickjs.c:45759,17'
          Dst:             is_hi_surrogate
        - Src:             'quickjs.c:45760,21'
          Dst:             from_surrogate
    - functionName:    test_final_sigma
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45772
      functionLinenumberEnd: 45797
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          64
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - lre_is_case_ignorable
        - lre_is_cased
        - string_getc
        - string_prevc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:45779,14'
          Dst:             string_prevc
        - Src:             'quickjs.c:45780,14'
          Dst:             lre_is_case_ignorable
        - Src:             'quickjs.c:45783,10'
          Dst:             lre_is_cased
        - Src:             'quickjs.c:45792,14'
          Dst:             string_getc
        - Src:             'quickjs.c:45793,14'
          Dst:             lre_is_case_ignorable
        - Src:             'quickjs.c:45796,13'
          Dst:             lre_is_cased
    - functionName:    js_thisStringValue
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44604
      functionLinenumberEnd: 44617
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          72
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - JS_DupValue
        - JS_ThrowTypeError
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44607,16'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:44613,24'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:44616,12'
          Dst:             JS_ThrowTypeError
    - functionName:    string_buffer_fill
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3898
      functionLinenumberEnd: 3909
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          57
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - string_buffer_putc16
        - string_buffer_realloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3901,13'
          Dst:             string_buffer_realloc
        - Src:             'quickjs.c:3905,13'
          Dst:             string_buffer_putc16
    - functionName:    string_indexof
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44878
      functionLinenumberEnd: 44891
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          67
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - string_cmp
        - string_get
        - string_indexof_char
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44883,24'
          Dst:             string_get
        - Src:             'quickjs.c:44884,13'
          Dst:             string_indexof_char
        - Src:             'quickjs.c:44887,14'
          Dst:             string_cmp
    - functionName:    string_indexof_char
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44858
      functionLinenumberEnd: 44875
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          88
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    17
      BranchProfiles:  []
      Callsites:       []
    - functionName:    string_cmp
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44848
      functionLinenumberEnd: 44855
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          44
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - string_get
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44851,19'
          Dst:             string_get
        - Src:             'quickjs.c:44851,52'
          Dst:             string_get
    - functionName:    check_regexp_g_flag
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45112
      functionLinenumberEnd: 45138
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          82
      EdgeCount:       26
      CyclomaticComplexity: 9
      functionsReached:
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsNull
        - JS_IsUndefined
        - JS_ThrowTypeError
        - JS_ToStringFree
        - js_is_regexp
        - string_indexof_char
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:45116,11'
          Dst:             js_is_regexp
        - Src:             'quickjs.c:45120,17'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:45121,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45123,13'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:45123,38'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:45127,17'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:45128,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45130,15'
          Dst:             string_indexof_char
        - Src:             'quickjs.c:45131,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:0,0'
          Dst:             JS_ThrowTypeError
    - functionName:    js_is_regexp
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47019
      functionLinenumberEnd: 47030
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          47
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsObject
        - JS_IsUndefined
        - JS_ToBoolFree
        - js_get_regexp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:47022,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:47024,9'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:47025,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47027,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:47028,16'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:47029,12'
          Dst:             js_get_regexp
    - functionName:    js_get_regexp
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47005
      functionLinenumberEnd: 47015
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          47
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_ThrowTypeErrorInvalidClass
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:47012,9'
          Dst:             JS_ThrowTypeErrorInvalidClass
    - functionName:    js_string_CreateHTML
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46096
      functionLinenumberEnd: 46146
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          119
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_ToStringCheckObject
        - string_buffer_concat_value_free
        - string_buffer_end
        - string_buffer_free
        - string_buffer_init
        - string_buffer_putc16
        - string_buffer_putc8
        - string_buffer_puts8
        - string_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:46107,11'
          Dst:             JS_ToStringCheckObject
        - Src:             'quickjs.c:46108,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:46110,5'
          Dst:             string_buffer_init
        - Src:             'quickjs.c:46111,5'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:46112,5'
          Dst:             string_buffer_puts8
        - Src:             'quickjs.c:46118,9'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:46119,9'
          Dst:             string_buffer_puts8
        - Src:             'quickjs.c:46120,9'
          Dst:             string_buffer_puts8
        - Src:             'quickjs.c:46121,17'
          Dst:             JS_ToStringCheckObject
        - Src:             'quickjs.c:46122,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:46123,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:46124,13'
          Dst:             string_buffer_free
        - Src:             'quickjs.c:46129,21'
          Dst:             string_get
        - Src:             'quickjs.c:46131,17'
          Dst:             string_buffer_puts8
        - Src:             'quickjs.c:46133,17'
          Dst:             string_buffer_putc16
        - Src:             'quickjs.c:46136,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:46137,9'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:46140,5'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:46141,5'
          Dst:             string_buffer_concat_value_free
        - Src:             'quickjs.c:46142,5'
          Dst:             string_buffer_puts8
        - Src:             'quickjs.c:46143,5'
          Dst:             string_buffer_puts8
        - Src:             'quickjs.c:46144,5'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:46145,12'
          Dst:             string_buffer_end
    - functionName:    string_buffer_puts8
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3830
      functionLinenumberEnd: 3831
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - string_buffer_write8
        - strlen
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3831,58'
          Dst:             strlen
        - Src:             'quickjs.c:3831,12'
          Dst:             string_buffer_write8
    - functionName:    js_string_toLowerCase
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45801
      functionLinenumberEnd: 45835
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          155
      EdgeCount:       44
      CyclomaticComplexity: 13
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_ToStringCheckObject
        - lre_case_conv
        - string_buffer_end
        - string_buffer_free
        - string_buffer_init
        - string_buffer_putc
        - string_getc
        - test_final_sigma
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:45808,11'
          Dst:             JS_ToStringCheckObject
        - Src:             'quickjs.c:45809,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45814,9'
          Dst:             string_buffer_init
        - Src:             'quickjs.c:45817,13'
          Dst:             string_getc
        - Src:             'quickjs.c:45818,39'
          Dst:             test_final_sigma
        - Src:             'quickjs.c:45822,17'
          Dst:             lre_case_conv
        - Src:             'quickjs.c:45825,17'
          Dst:             string_buffer_putc
        - Src:             'quickjs.c:45829,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45830,12'
          Dst:             string_buffer_end
        - Src:             'quickjs.c:45832,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45833,5'
          Dst:             string_buffer_free
    - functionName:    string_buffer_putc
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3743
      functionLinenumberEnd: 3760
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          97
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - get_hi_surrogate
        - get_lo_surrogate
        - string_buffer_putc_slow
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3750,45'
          Dst:             get_hi_surrogate
        - Src:             'quickjs.c:3751,45'
          Dst:             get_lo_surrogate
        - Src:             'quickjs.c:3759,12'
          Dst:             string_buffer_putc_slow
    - functionName:    string_buffer_putc_slow
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3731
      functionLinenumberEnd: 3739
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          36
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - get_hi_surrogate
        - get_lo_surrogate
        - string_buffer_putc16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3734,37'
          Dst:             get_hi_surrogate
        - Src:             'quickjs.c:3734,13'
          Dst:             string_buffer_putc16
        - Src:             'quickjs.c:3736,13'
          Dst:             get_lo_surrogate
        - Src:             'quickjs.c:3738,12'
          Dst:             string_buffer_putc16
    - functionName:    js_string_toString
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46035
      functionLinenumberEnd: 46036
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_thisStringValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:46036,12'
          Dst:             js_thisStringValue
    - functionName:    js_string_trim
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45722
      functionLinenumberEnd: 45744
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          108
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_ToStringCheckObject
        - js_sub_string
        - lre_is_space
        - string_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:45727,11'
          Dst:             JS_ToStringCheckObject
        - Src:             'quickjs.c:45728,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45734,40'
          Dst:             string_get
        - Src:             'quickjs.c:45734,27'
          Dst:             lre_is_space
        - Src:             'quickjs.c:45738,38'
          Dst:             string_get
        - Src:             'quickjs.c:45738,25'
          Dst:             lre_is_space
        - Src:             'quickjs.c:45741,11'
          Dst:             js_sub_string
        - Src:             'quickjs.c:45742,5'
          Dst:             JS_FreeValue
    - functionName:    js_sub_string
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3552
      functionLinenumberEnd: 3578
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         77
      ICount:          416
      EdgeCount:       105
      CyclomaticComplexity: 30
      functionsReached:
        - JS_DupValue
        - js_alloc_string
        - js_new_string16_len
        - js_new_string8_len
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3555,16'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:3565,20'
          Dst:             js_new_string16_len
        - Src:             'quickjs.c:3567,15'
          Dst:             js_alloc_string
        - Src:             'quickjs.c:3576,16'
          Dst:             js_new_string8_len
    - functionName:    js_string_pad
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45606
      functionLinenumberEnd: 45673
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          227
      EdgeCount:       69
      CyclomaticComplexity: 21
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_IsUndefined
        - JS_ThrowRangeError
        - JS_ToInt32Sat
        - JS_ToString
        - JS_ToStringCheckObject
        - min_int
        - string_buffer_concat
        - string_buffer_end
        - string_buffer_fill
        - string_buffer_free
        - string_buffer_init
        - string_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:45612,11'
          Dst:             JS_ToStringCheckObject
        - Src:             'quickjs.c:45613,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45615,9'
          Dst:             JS_ToInt32Sat
        - Src:             'quickjs.c:45621,22'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:45622,13'
          Dst:             JS_ToString
        - Src:             'quickjs.c:45623,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45627,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45631,17'
          Dst:             string_get
        - Src:             'quickjs.c:45636,9'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:45639,9'
          Dst:             string_buffer_init
        - Src:             'quickjs.c:45643,13'
          Dst:             string_buffer_concat
        - Src:             'quickjs.c:45648,25'
          Dst:             min_int
        - Src:             'quickjs.c:45649,17'
          Dst:             string_buffer_concat
        - Src:             'quickjs.c:45654,13'
          Dst:             string_buffer_fill
        - Src:             'quickjs.c:45658,13'
          Dst:             string_buffer_concat
        - Src:             'quickjs.c:45661,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45662,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45663,12'
          Dst:             string_buffer_end
        - Src:             'quickjs.c:45666,5'
          Dst:             string_buffer_free
        - Src:             'quickjs.c:45668,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45670,5'
          Dst:             JS_FreeValue
    - functionName:    js_string_replace
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45315
      functionLinenumberEnd: 45423
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         68
      ICount:          395
      EdgeCount:       94
      CyclomaticComplexity: 28
      functionsReached:
        - JS_Call
        - JS_CallFree
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsFunction
        - JS_IsNull
        - JS_IsObject
        - JS_IsUndefined
        - JS_ThrowTypeError
        - JS_ToString
        - JS_ToStringFree
        - check_regexp_g_flag
        - js_string_GetSubstitution
        - string_buffer_concat
        - string_buffer_concat_value_free
        - string_buffer_end
        - string_buffer_free
        - string_buffer_init
        - string_indexof
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:45325,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:45325,30'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:45326,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:45332,9'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:45335,17'
          Dst:             check_regexp_g_flag
        - Src:             'quickjs.c:45338,20'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:45339,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45341,14'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:45341,43'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:45344,20'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:45347,5'
          Dst:             string_buffer_init
        - Src:             'quickjs.c:45349,11'
          Dst:             JS_ToString
        - Src:             'quickjs.c:45350,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45352,18'
          Dst:             JS_ToString
        - Src:             'quickjs.c:45353,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45355,25'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:45357,28'
          Dst:             JS_ToString
        - Src:             'quickjs.c:45358,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45375,19'
          Dst:             string_indexof
        - Src:             'quickjs.c:45388,9'
          Dst:             string_buffer_concat
        - Src:             'quickjs.c:45394,45'
          Dst:             JS_Call
        - Src:             'quickjs.c:45394,24'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:45395,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45397,13'
          Dst:             string_buffer_concat_value_free
        - Src:             'quickjs.c:45399,17'
          Dst:             js_string_GetSubstitution
        - Src:             'quickjs.c:45375,19'
          Dst:             string_indexof
        - Src:             'quickjs.c:45379,17'
          Dst:             string_buffer_free
        - Src:             'quickjs.c:45380,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45381,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45388,9'
          Dst:             string_buffer_concat
        - Src:             'quickjs.c:45394,45'
          Dst:             JS_Call
        - Src:             'quickjs.c:45394,24'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:45395,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45397,13'
          Dst:             string_buffer_concat_value_free
        - Src:             'quickjs.c:45399,17'
          Dst:             js_string_GetSubstitution
        - Src:             'quickjs.c:45411,5'
          Dst:             string_buffer_concat
        - Src:             'quickjs.c:45412,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45413,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45414,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45415,12'
          Dst:             string_buffer_end
        - Src:             'quickjs.c:45418,5'
          Dst:             string_buffer_free
        - Src:             'quickjs.c:45419,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45420,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45421,5'
          Dst:             JS_FreeValue
    - functionName:    js_string_GetSubstitution
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45202
      functionLinenumberEnd: 45310
      functionDepth:   0
      returnType:      int
      argCount:        11
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         86
      ICount:          403
      EdgeCount:       122
      CyclomaticComplexity: 38
      functionsReached:
        - JS_GetPropertyInt64
        - JS_GetPropertyValue
        - JS_IsException
        - JS_IsUndefined
        - JS_ThrowTypeError
        - js_get_length32
        - js_sub_string
        - string_buffer_concat
        - string_buffer_concat_value
        - string_buffer_concat_value_free
        - string_buffer_putc8
        - string_get
        - string_indexof_char
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:45210,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:45220,14'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:45221,17'
          Dst:             js_get_length32
        - Src:             'quickjs.c:45224,13'
          Dst:             js_get_length32
        - Src:             'quickjs.c:45231,13'
          Dst:             string_indexof_char
        - Src:             'quickjs.c:45234,9'
          Dst:             string_buffer_concat
        - Src:             'quickjs.c:45236,13'
          Dst:             string_get
        - Src:             'quickjs.c:45238,13'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:45241,17'
          Dst:             string_buffer_concat
        - Src:             'quickjs.c:45243,21'
          Dst:             string_buffer_concat_value
        - Src:             'quickjs.c:45247,13'
          Dst:             string_buffer_concat
        - Src:             'quickjs.c:45249,13'
          Dst:             string_buffer_concat
        - Src:             'quickjs.c:45253,22'
          Dst:             string_get
        - Src:             'quickjs.c:45271,25'
          Dst:             string_buffer_concat
        - Src:             'quickjs.c:45274,25'
          Dst:             JS_GetPropertyInt64
        - Src:             'quickjs.c:45275,25'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45277,26'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:45278,29'
          Dst:             string_buffer_concat_value_free
        - Src:             'quickjs.c:45285,33'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:45286,17'
          Dst:             string_indexof_char
        - Src:             'quickjs.c:45289,20'
          Dst:             js_sub_string
        - Src:             'quickjs.c:45290,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45292,23'
          Dst:             JS_GetPropertyValue
        - Src:             'quickjs.c:45293,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45295,18'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:45296,21'
          Dst:             string_buffer_concat_value_free
        - Src:             'quickjs.c:45302,13'
          Dst:             string_buffer_concat
        - Src:             'quickjs.c:45231,13'
          Dst:             string_indexof_char
        - Src:             'quickjs.c:45306,5'
          Dst:             string_buffer_concat
    - functionName:    js_string_repeat
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45677
      functionLinenumberEnd: 45718
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          137
      EdgeCount:       41
      CyclomaticComplexity: 13
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_ThrowRangeError
        - JS_ToInt64Sat
        - JS_ToStringCheckObject
        - string_buffer_concat
        - string_buffer_end
        - string_buffer_fill
        - string_buffer_init2
        - string_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:45684,11'
          Dst:             JS_ToStringCheckObject
        - Src:             'quickjs.c:45685,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45687,9'
          Dst:             JS_ToInt64Sat
        - Src:             'quickjs.c:45703,9'
          Dst:             string_buffer_init2
        - Src:             'quickjs.c:45706,31'
          Dst:             string_get
        - Src:             'quickjs.c:45706,9'
          Dst:             string_buffer_fill
        - Src:             'quickjs.c:45709,13'
          Dst:             string_buffer_concat
        - Src:             'quickjs.c:45712,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45713,12'
          Dst:             string_buffer_end
        - Src:             'quickjs.c:0,0'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:45716,5'
          Dst:             JS_FreeValue
    - functionName:    js_string_slice
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45578
      functionLinenumberEnd: 45602
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          84
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_IsUndefined
        - JS_ToInt32Clamp
        - JS_ToStringCheckObject
        - js_sub_string
        - max_int
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:45583,11'
          Dst:             JS_ToStringCheckObject
        - Src:             'quickjs.c:45584,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45588,9'
          Dst:             JS_ToInt32Clamp
        - Src:             'quickjs.c:45593,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:45594,13'
          Dst:             JS_ToInt32Clamp
        - Src:             'quickjs.c:45599,40'
          Dst:             max_int
        - Src:             'quickjs.c:45599,11'
          Dst:             js_sub_string
        - Src:             'quickjs.c:0,0'
          Dst:             JS_FreeValue
    - functionName:    js_string_substr
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45550
      functionLinenumberEnd: 45574
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          85
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_IsUndefined
        - JS_ToInt32Clamp
        - JS_ToStringCheckObject
        - js_sub_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:45555,11'
          Dst:             JS_ToStringCheckObject
        - Src:             'quickjs.c:45556,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45560,9'
          Dst:             JS_ToInt32Clamp
        - Src:             'quickjs.c:45565,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:45566,13'
          Dst:             JS_ToInt32Clamp
        - Src:             'quickjs.c:45571,11'
          Dst:             js_sub_string
        - Src:             'quickjs.c:0,0'
          Dst:             JS_FreeValue
    - functionName:    js_string_substring
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45516
      functionLinenumberEnd: 45546
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          99
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_IsUndefined
        - JS_ToInt32Clamp
        - JS_ToStringCheckObject
        - js_sub_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:45521,11'
          Dst:             JS_ToStringCheckObject
        - Src:             'quickjs.c:45522,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45525,9'
          Dst:             JS_ToInt32Clamp
        - Src:             'quickjs.c:45530,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:45531,13'
          Dst:             JS_ToInt32Clamp
        - Src:             'quickjs.c:45543,11'
          Dst:             js_sub_string
        - Src:             'quickjs.c:0,0'
          Dst:             JS_FreeValue
    - functionName:    js_string_split
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45427
      functionLinenumberEnd: 45512
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         58
      ICount:          313
      EdgeCount:       81
      CyclomaticComplexity: 25
      functionsReached:
        - JS_CallFree
        - JS_CreateDataPropertyUint32
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsNull
        - JS_IsObject
        - JS_IsUndefined
        - JS_NewArray
        - JS_ThrowTypeError
        - JS_ToString
        - JS_ToUint32
        - js_sub_string
        - string_indexof
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:45436,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:45436,30'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:45437,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:45443,9'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:45445,20'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:45446,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45448,14'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:45448,43'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:45451,20'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:45454,9'
          Dst:             JS_ToString
        - Src:             'quickjs.c:45455,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45457,9'
          Dst:             JS_NewArray
        - Src:             'quickjs.c:45458,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45461,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:45464,13'
          Dst:             JS_ToUint32
        - Src:             'quickjs.c:45469,9'
          Dst:             JS_ToString
        - Src:             'quickjs.c:45470,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45477,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:45485,13'
          Dst:             string_indexof
        - Src:             'quickjs.c:45488,13'
          Dst:             js_sub_string
        - Src:             'quickjs.c:45489,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45491,13'
          Dst:             JS_CreateDataPropertyUint32
        - Src:             'quickjs.c:45497,9'
          Dst:             js_sub_string
        - Src:             'quickjs.c:45498,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45500,9'
          Dst:             JS_CreateDataPropertyUint32
        - Src:             'quickjs.c:45503,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45504,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45508,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45509,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45510,5'
          Dst:             JS_FreeValue
    - functionName:    js_string_match
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45142
      functionLinenumberEnd: 45188
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          193
      EdgeCount:       45
      CyclomaticComplexity: 14
      functionsReached:
        - JS_CallConstructor
        - JS_CallFree
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_InvokeFree
        - JS_IsException
        - JS_IsNull
        - JS_IsObject
        - JS_IsUndefined
        - JS_ThrowTypeError
        - JS_ToString
        - check_regexp_g_flag
        - js_new_string8
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:45149,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:45149,30'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:45150,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:45152,9'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:45153,19'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:45154,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45157,17'
          Dst:             check_regexp_g_flag
        - Src:             'quickjs.c:45158,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45162,14'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:45162,42'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:45163,20'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:45166,9'
          Dst:             JS_ToString
        - Src:             'quickjs.c:45167,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45173,15'
          Dst:             js_new_string8
        - Src:             'quickjs.c:45174,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45178,10'
          Dst:             JS_CallConstructor
        - Src:             'quickjs.c:45179,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45180,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45182,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45185,14'
          Dst:             JS_InvokeFree
        - Src:             'quickjs.c:45186,5'
          Dst:             JS_FreeValue
    - functionName:    js_string_includes
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45049
      functionLinenumberEnd: 45109
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          199
      EdgeCount:       58
      CyclomaticComplexity: 18
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_IsUndefined
        - JS_ThrowTypeError
        - JS_ToInt32Clamp
        - JS_ToString
        - JS_ToStringCheckObject
        - js_is_regexp
        - string_cmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:45055,11'
          Dst:             JS_ToStringCheckObject
        - Src:             'quickjs.c:45056,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45058,11'
          Dst:             js_is_regexp
        - Src:             'quickjs.c:45061,13'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:45064,9'
          Dst:             JS_ToString
        - Src:             'quickjs.c:45065,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45072,22'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:45073,13'
          Dst:             JS_ToInt32Clamp
        - Src:             'quickjs.c:45092,18'
          Dst:             string_cmp
        - Src:             'quickjs.c:45092,18'
          Dst:             string_cmp
        - Src:             'quickjs.c:45101,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45102,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45106,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45107,5'
          Dst:             JS_FreeValue
    - functionName:    js_string_indexOf
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44981
      functionLinenumberEnd: 45042
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          192
      EdgeCount:       56
      CyclomaticComplexity: 17
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_ToFloat64
        - JS_ToInt32Clamp
        - JS_ToString
        - JS_ToStringCheckObject
        - string_cmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44987,11'
          Dst:             JS_ToStringCheckObject
        - Src:             'quickjs.c:44988,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:44990,9'
          Dst:             JS_ToString
        - Src:             'quickjs.c:44991,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45001,17'
          Dst:             JS_ToFloat64
        - Src:             'quickjs.c:45016,17'
          Dst:             JS_ToInt32Clamp
        - Src:             'quickjs.c:45026,18'
          Dst:             string_cmp
        - Src:             'quickjs.c:45026,18'
          Dst:             string_cmp
        - Src:             'quickjs.c:45034,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45035,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45039,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45040,5'
          Dst:             JS_FreeValue
    - functionName:    js_string_toWellFormed
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44944
      functionLinenumberEnd: 44977
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          125
      EdgeCount:       34
      CyclomaticComplexity: 11
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_ToStringCheckObject
        - is_hi_surrogate
        - is_lo_surrogate
        - is_surrogate
        - js_new_string16_len
        - js_string_find_invalid_codepoint
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44949,11'
          Dst:             JS_ToStringCheckObject
        - Src:             'quickjs.c:44950,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:44955,9'
          Dst:             js_string_find_invalid_codepoint
        - Src:             'quickjs.c:44959,11'
          Dst:             js_new_string16_len
        - Src:             'quickjs.c:44960,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:44961,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:44967,13'
          Dst:             is_surrogate
        - Src:             'quickjs.c:44968,17'
          Dst:             is_hi_surrogate
        - Src:             'quickjs.c:44969,17'
          Dst:             is_lo_surrogate
    - functionName:    js_string_find_invalid_codepoint
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44908
      functionLinenumberEnd: 44924
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          90
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - is_hi_surrogate
        - is_lo_surrogate
        - is_surrogate
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44914,13'
          Dst:             is_surrogate
        - Src:             'quickjs.c:44915,17'
          Dst:             is_hi_surrogate
        - Src:             'quickjs.c:44916,17'
          Dst:             is_lo_surrogate
    - functionName:    is_surrogate
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 336
      functionLinenumberEnd: 337
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_string_isWellFormed
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44928
      functionLinenumberEnd: 44940
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_ToStringCheckObject
        - js_string_find_invalid_codepoint
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44933,11'
          Dst:             JS_ToStringCheckObject
        - Src:             'quickjs.c:44934,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:44937,12'
          Dst:             js_string_find_invalid_codepoint
        - Src:             'quickjs.c:44938,5'
          Dst:             JS_FreeValue
    - functionName:    js_string_codePointAt
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44806
      functionLinenumberEnd: 44827
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          69
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_ToInt32Sat
        - JS_ToStringCheckObject
        - string_getc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44811,11'
          Dst:             JS_ToStringCheckObject
        - Src:             'quickjs.c:44812,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:44815,9'
          Dst:             JS_ToInt32Sat
        - Src:             'quickjs.c:44822,13'
          Dst:             string_getc
        - Src:             'quickjs.c:0,0'
          Dst:             JS_FreeValue
    - functionName:    js_string_concat
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44831
      functionLinenumberEnd: 44845
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          53
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_ConcatString
        - JS_DupValue
        - JS_IsException
        - JS_ToStringCheckObject
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44838,9'
          Dst:             JS_ToStringCheckObject
        - Src:             'quickjs.c:44840,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:44842,37'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:44842,13'
          Dst:             JS_ConcatString
    - functionName:    js_string_charCodeAt
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44751
      functionLinenumberEnd: 44772
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          69
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_ToInt32Sat
        - JS_ToStringCheckObject
        - string_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44756,11'
          Dst:             JS_ToStringCheckObject
        - Src:             'quickjs.c:44757,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:44760,9'
          Dst:             JS_ToInt32Sat
        - Src:             'quickjs.c:44767,13'
          Dst:             string_get
        - Src:             'quickjs.c:0,0'
          Dst:             JS_FreeValue
    - functionName:    js_string_charAt
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44776
      functionLinenumberEnd: 44802
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          115
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - JS_AtomToString
        - JS_FreeValue
        - JS_IsException
        - JS_ToInt32Sat
        - JS_ToStringCheckObject
        - js_new_string_char
        - string_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44781,11'
          Dst:             JS_ToStringCheckObject
        - Src:             'quickjs.c:44782,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:44785,9'
          Dst:             JS_ToInt32Sat
        - Src:             'quickjs.c:44786,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:44795,19'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:44797,13'
          Dst:             string_get
        - Src:             'quickjs.c:44798,15'
          Dst:             js_new_string_char
        - Src:             'quickjs.c:44800,5'
          Dst:             JS_FreeValue
    - functionName:    js_string_raw
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44673
      functionLinenumberEnd: 44709
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          143
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - JS_FreeValue
        - JS_GetPropertyInt64
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_ToObject
        - JS_ToObjectFree
        - JS_ToStringFree
        - js_get_length64
        - string_buffer_concat_value
        - string_buffer_concat_value_free
        - string_buffer_end
        - string_buffer_free
        - string_buffer_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44679,5'
          Dst:             string_buffer_init
        - Src:             'quickjs.c:44681,14'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:44682,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:44684,32'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:44684,11'
          Dst:             JS_ToObjectFree
        - Src:             'quickjs.c:44685,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:44687,9'
          Dst:             js_get_length64
        - Src:             'quickjs.c:44691,36'
          Dst:             JS_GetPropertyInt64
        - Src:             'quickjs.c:44691,15'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:44692,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:44694,9'
          Dst:             string_buffer_concat_value_free
        - Src:             'quickjs.c:44696,17'
          Dst:             string_buffer_concat_value
        - Src:             'quickjs.c:44700,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:44701,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:44702,12'
          Dst:             string_buffer_end
        - Src:             'quickjs.c:44705,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:44706,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:44707,5'
          Dst:             string_buffer_free
    - functionName:    js_string_fromCodePoint
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44639
      functionLinenumberEnd: 44669
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          133
      EdgeCount:       45
      CyclomaticComplexity: 14
      functionsReached:
        - JS_ThrowRangeError
        - JS_ToFloat64
        - string_buffer_end
        - string_buffer_free
        - string_buffer_init
        - string_buffer_putc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44646,9'
          Dst:             string_buffer_init
        - Src:             'quickjs.c:44654,17'
          Dst:             JS_ToFloat64
        - Src:             'quickjs.c:44659,13'
          Dst:             string_buffer_putc
        - Src:             'quickjs.c:44662,12'
          Dst:             string_buffer_end
        - Src:             'quickjs.c:44665,5'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:44667,5'
          Dst:             string_buffer_free
    - functionName:    js_string_fromCharCode
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44621
      functionLinenumberEnd: 44635
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          72
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - JS_ToInt32
        - string_buffer_end
        - string_buffer_free
        - string_buffer_init
        - string_buffer_putc16
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44625,5'
          Dst:             string_buffer_init
        - Src:             'quickjs.c:44629,13'
          Dst:             JS_ToInt32
        - Src:             'quickjs.c:44629,45'
          Dst:             string_buffer_putc16
        - Src:             'quickjs.c:44630,13'
          Dst:             string_buffer_free
        - Src:             'quickjs.c:44634,12'
          Dst:             string_buffer_end
    - functionName:    js_thisBooleanValue
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44445
      functionLinenumberEnd: 44457
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          61
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_DupValue
        - JS_ThrowTypeError
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44447,16'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:44456,12'
          Dst:             JS_ThrowTypeError
    - functionName:    js_boolean_valueOf
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44471
      functionLinenumberEnd: 44472
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_thisBooleanValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44472,12'
          Dst:             js_thisBooleanValue
    - functionName:    js_boolean_toString
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44461
      functionLinenumberEnd: 44467
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_AtomToString
        - JS_IsException
        - js_thisBooleanValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44462,19'
          Dst:             js_thisBooleanValue
        - Src:             'quickjs.c:44463,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:44465,12'
          Dst:             JS_AtomToString
    - functionName:    js_thisNumberValue
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44234
      functionLinenumberEnd: 44246
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          65
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_DupValue
        - JS_IsNumber
        - JS_ThrowTypeError
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44235,9'
          Dst:             JS_IsNumber
        - Src:             'quickjs.c:44236,16'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:44241,17'
          Dst:             JS_IsNumber
        - Src:             'quickjs.c:44242,24'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:44245,12'
          Dst:             JS_ThrowTypeError
    - functionName:    js_number_valueOf
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44250
      functionLinenumberEnd: 44251
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_thisNumberValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44251,12'
          Dst:             js_thisNumberValue
    - functionName:    js_number_toString
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44268
      functionLinenumberEnd: 44298
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          110
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_IsUndefined
        - JS_ToFloat64Free
        - i64toa_radix
        - js_dtoa2
        - js_get_radix
        - js_new_string8_len
        - js_thisNumberValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44273,11'
          Dst:             js_thisNumberValue
        - Src:             'quickjs.c:44274,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:44276,18'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:44279,16'
          Dst:             js_get_radix
        - Src:             'quickjs.c:44286,15'
          Dst:             i64toa_radix
        - Src:             'quickjs.c:44287,16'
          Dst:             js_new_string8_len
        - Src:             'quickjs.c:44289,9'
          Dst:             JS_ToFloat64Free
        - Src:             'quickjs.c:44294,12'
          Dst:             js_dtoa2
        - Src:             'quickjs.c:44296,5'
          Dst:             JS_FreeValue
    - functionName:    js_number_toPrecision
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44354
      functionLinenumberEnd: 44375
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          105
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - JS_IsException
        - JS_IsUndefined
        - JS_ThrowRangeError
        - JS_ToFloat64Free
        - JS_ToInt32Sat
        - JS_ToStringFree
        - __JS_NewFloat64
        - js_dtoa2
        - js_thisNumberValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44359,11'
          Dst:             js_thisNumberValue
        - Src:             'quickjs.c:44360,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:44362,9'
          Dst:             JS_ToFloat64Free
        - Src:             'quickjs.c:44364,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:44366,9'
          Dst:             JS_ToInt32Sat
        - Src:             'quickjs.c:44370,38'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:44370,16'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:44373,16'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:44374,12'
          Dst:             js_dtoa2
    - functionName:    js_number_toFixed
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44302
      functionLinenumberEnd: 44321
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          90
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - JS_IsException
        - JS_ThrowRangeError
        - JS_ToFloat64Free
        - JS_ToInt32Sat
        - js_dtoa2
        - js_thisNumberValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44307,11'
          Dst:             js_thisNumberValue
        - Src:             'quickjs.c:44308,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:44310,9'
          Dst:             JS_ToFloat64Free
        - Src:             'quickjs.c:44312,9'
          Dst:             JS_ToInt32Sat
        - Src:             'quickjs.c:44315,16'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:44320,12'
          Dst:             js_dtoa2
    - functionName:    js_number_toExponential
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44325
      functionLinenumberEnd: 44350
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          107
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - JS_IsException
        - JS_IsUndefined
        - JS_ThrowRangeError
        - JS_ToFloat64Free
        - JS_ToInt32Sat
        - JS_ToStringFree
        - __JS_NewFloat64
        - js_dtoa2
        - js_thisNumberValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44330,11'
          Dst:             js_thisNumberValue
        - Src:             'quickjs.c:44331,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:44333,9'
          Dst:             JS_ToFloat64Free
        - Src:             'quickjs.c:44335,9'
          Dst:             JS_ToInt32Sat
        - Src:             'quickjs.c:44338,38'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:44338,16'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:44340,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:44345,20'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:44349,12'
          Dst:             js_dtoa2
    - functionName:    is_safe_integer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13089
      functionLinenumberEnd: 13091
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          25
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_number_isSafeInteger
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44204
      functionLinenumberEnd: 44211
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          44
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_IsNumber
        - JS_ToFloat64
        - is_safe_integer
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44206,10'
          Dst:             JS_IsNumber
        - Src:             'quickjs.c:44208,9'
          Dst:             JS_ToFloat64
        - Src:             'quickjs.c:44210,28'
          Dst:             is_safe_integer
    - functionName:    js_number_isInteger
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44193
      functionLinenumberEnd: 44200
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_NumberIsInteger
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44195,11'
          Dst:             JS_NumberIsInteger
    - functionName:    js_number_isFinite
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44185
      functionLinenumberEnd: 44189
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_IsNumber
        - js_global_isFinite
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44186,10'
          Dst:             JS_IsNumber
        - Src:             'quickjs.c:44188,12'
          Dst:             js_global_isFinite
    - functionName:    js_global_isFinite
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39312
      functionLinenumberEnd: 39317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_ToFloat64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39314,9'
          Dst:             JS_ToFloat64
    - functionName:    js_number_isNaN
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44177
      functionLinenumberEnd: 44181
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_IsNumber
        - js_global_isNaN
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44178,10'
          Dst:             JS_IsNumber
        - Src:             'quickjs.c:44180,12'
          Dst:             js_global_isNaN
    - functionName:    js_global_isNaN
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39302
      functionLinenumberEnd: 39308
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_ToFloat64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39305,9'
          Dst:             JS_ToFloat64
    - functionName:    shr_rndn
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11852
      functionLinenumberEnd: 11854
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_bigint_to_float64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11860
      functionLinenumberEnd: 11888
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          68
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - js_bigint_get_mant_exp
        - js_bigint_sign
        - shr_rndn
        - uint64_as_float64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:11869,11'
          Dst:             js_bigint_sign
        - Src:             'quickjs.c:11870,12'
          Dst:             js_bigint_get_mant_exp
        - Src:             'quickjs.c:11877,16'
          Dst:             shr_rndn
        - Src:             'quickjs.c:11885,12'
          Dst:             uint64_as_float64
    - functionName:    JS_ToNumeric
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12632
      functionLinenumberEnd: 12633
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
        - JS_ToNumericFree
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:12633,34'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:12633,12'
          Dst:             JS_ToNumericFree
    - functionName:    isUnescaped
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54135
      functionLinenumberEnd: 54142
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          26
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - memchr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:54142,9'
          Dst:             memchr
    - functionName:    encodeURI_hex
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54154
      functionLinenumberEnd: 54168
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - string_buffer_write8
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:54167,12'
          Dst:             string_buffer_write8
    - functionName:    isURIUnescaped
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54145
      functionLinenumberEnd: 54151
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          84
      EdgeCount:       32
      CyclomaticComplexity: 11
      functionsReached:
        - isURIReserved
        - memchr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:54150,10'
          Dst:             memchr
        - Src:             'quickjs.c:54151,27'
          Dst:             isURIReserved
    - functionName:    isURIReserved
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54034
      functionLinenumberEnd: 54035
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memchr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:54035,25'
          Dst:             memchr
    - functionName:    string_get_hex
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54024
      functionLinenumberEnd: 54032
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          39
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - from_hex
        - string_get
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:54027,27'
          Dst:             string_get
        - Src:             'quickjs.c:54027,18'
          Dst:             from_hex
    - functionName:    js_throw_URIError
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54039
      functionLinenumberEnd: 54046
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_ThrowError
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:54043,5'
          Dst:             JS_ThrowError
    - functionName:    hex_decode
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54048
      functionLinenumberEnd: 54057
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          55
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - js_throw_URIError
        - string_get
        - string_get_hex
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:54051,24'
          Dst:             string_get
        - Src:             'quickjs.c:54053,33'
          Dst:             string_get_hex
        - Src:             'quickjs.c:0,0'
          Dst:             js_throw_URIError
    - functionName:    js_global_eval
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39296
      functionLinenumberEnd: 39297
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_EvalObject
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39297,12'
          Dst:             JS_EvalObject
    - functionName:    js_global_unescape
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54263
      functionLinenumberEnd: 54294
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          122
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_ToString
        - string_buffer_end
        - string_buffer_init
        - string_buffer_putc16
        - string_get
        - string_get_hex
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:54269,11'
          Dst:             JS_ToString
        - Src:             'quickjs.c:54270,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:54273,5'
          Dst:             string_buffer_init
        - Src:             'quickjs.c:54276,13'
          Dst:             string_get
        - Src:             'quickjs.c:54279,17'
          Dst:             string_get
        - Src:             'quickjs.c:54280,22'
          Dst:             string_get_hex
        - Src:             'quickjs.c:54285,22'
          Dst:             string_get_hex
        - Src:             'quickjs.c:54290,9'
          Dst:             string_buffer_putc16
        - Src:             'quickjs.c:54292,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:54293,12'
          Dst:             string_buffer_end
    - functionName:    js_global_escape
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54237
      functionLinenumberEnd: 54259
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          76
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_ToString
        - encodeURI_hex
        - isUnescaped
        - string_buffer_end
        - string_buffer_init
        - string_buffer_putc16
        - string_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:54243,11'
          Dst:             JS_ToString
        - Src:             'quickjs.c:54244,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:54248,5'
          Dst:             string_buffer_init
        - Src:             'quickjs.c:54250,13'
          Dst:             string_get
        - Src:             'quickjs.c:54251,13'
          Dst:             isUnescaped
        - Src:             'quickjs.c:54252,13'
          Dst:             string_buffer_putc16
        - Src:             'quickjs.c:54254,13'
          Dst:             encodeURI_hex
        - Src:             'quickjs.c:54257,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:54258,12'
          Dst:             string_buffer_end
    - functionName:    js_global_encodeURI
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54173
      functionLinenumberEnd: 54233
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          174
      EdgeCount:       44
      CyclomaticComplexity: 13
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_ToString
        - encodeURI_hex
        - from_surrogate
        - isURIUnescaped
        - is_hi_surrogate
        - is_lo_surrogate
        - js_throw_URIError
        - string_buffer_end
        - string_buffer_free
        - string_buffer_init
        - string_buffer_putc16
        - string_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:54179,11'
          Dst:             JS_ToString
        - Src:             'quickjs.c:54180,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:54184,5'
          Dst:             string_buffer_init
        - Src:             'quickjs.c:54186,13'
          Dst:             string_get
        - Src:             'quickjs.c:54188,13'
          Dst:             isURIUnescaped
        - Src:             'quickjs.c:54189,13'
          Dst:             string_buffer_putc16
        - Src:             'quickjs.c:54191,17'
          Dst:             is_lo_surrogate
        - Src:             'quickjs.c:54194,24'
          Dst:             is_hi_surrogate
        - Src:             'quickjs.c:54199,22'
          Dst:             string_get
        - Src:             'quickjs.c:54201,22'
          Dst:             is_lo_surrogate
        - Src:             'quickjs.c:54205,21'
          Dst:             from_surrogate
        - Src:             'quickjs.c:54208,17'
          Dst:             encodeURI_hex
        - Src:             'quickjs.c:54217,25'
          Dst:             encodeURI_hex
        - Src:             'quickjs.c:0,0'
          Dst:             encodeURI_hex
        - Src:             'quickjs.c:0,0'
          Dst:             encodeURI_hex
        - Src:             'quickjs.c:54222,17'
          Dst:             encodeURI_hex
        - Src:             'quickjs.c:54226,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:54227,12'
          Dst:             string_buffer_end
        - Src:             'quickjs.c:0,0'
          Dst:             js_throw_URIError
        - Src:             'quickjs.c:54230,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:54231,5'
          Dst:             string_buffer_free
    - functionName:    js_global_decodeURI
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54061
      functionLinenumberEnd: 54133
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          206
      EdgeCount:       65
      CyclomaticComplexity: 20
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_ToString
        - hex_decode
        - isURIReserved
        - is_surrogate
        - js_throw_URIError
        - string_buffer_end
        - string_buffer_free
        - string_buffer_init
        - string_buffer_putc
        - string_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:54067,11'
          Dst:             JS_ToString
        - Src:             'quickjs.c:54068,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:54071,5'
          Dst:             string_buffer_init
        - Src:             'quickjs.c:54075,13'
          Dst:             string_get
        - Src:             'quickjs.c:54077,17'
          Dst:             hex_decode
        - Src:             'quickjs.c:54082,37'
          Dst:             isURIReserved
        - Src:             'quickjs.c:54106,26'
          Dst:             hex_decode
        - Src:             'quickjs.c:54116,50'
          Dst:             is_surrogate
        - Src:             'quickjs.c:54117,21'
          Dst:             js_throw_URIError
        - Src:             'quickjs.c:54124,9'
          Dst:             string_buffer_putc
        - Src:             'quickjs.c:54126,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:54127,12'
          Dst:             string_buffer_end
        - Src:             'quickjs.c:54130,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:54131,5'
          Dst:             string_buffer_free
    - functionName:    js_parseFloat
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44414
      functionLinenumberEnd: 44426
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeCString
        - JS_ToCString
        - js_atof
        - skip_spaces
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44418,11'
          Dst:             JS_ToCString
        - Src:             'quickjs.c:44422,10'
          Dst:             skip_spaces
        - Src:             'quickjs.c:44423,11'
          Dst:             js_atof
        - Src:             'quickjs.c:44424,5'
          Dst:             JS_FreeCString
    - functionName:    js_parseInt
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44388
      functionLinenumberEnd: 44410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          77
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - JS_FreeCString
        - JS_ToCString
        - JS_ToInt32
        - js_atof
        - skip_spaces
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44393,11'
          Dst:             JS_ToCString
        - Src:             'quickjs.c:44396,9'
          Dst:             JS_ToInt32
        - Src:             'quickjs.c:44404,14'
          Dst:             skip_spaces
        - Src:             'quickjs.c:44406,15'
          Dst:             js_atof
        - Src:             'quickjs.c:0,0'
          Dst:             JS_FreeCString
    - functionName:    js_iterator_wrap_next
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43025
      functionLinenumberEnd: 43045
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          86
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - JS_FreeValue
        - JS_GetOpaque2
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsNull
        - JS_IsUndefined
        - JS_IteratorNext
        - JS_IteratorNext2
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:43028,10'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:43032,16'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:43034,18'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:43035,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43037,13'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:43037,34'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:43041,15'
          Dst:             JS_IteratorNext2
        - Src:             'quickjs.c:43042,9'
          Dst:             JS_FreeValue
    - functionName:    js_iterator_helper_next
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43770
      functionLinenumberEnd: 44021
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         144
      ICount:          830
      EdgeCount:       195
      CyclomaticComplexity: 53
      functionsReached:
        - JS_Call
        - JS_DupValue
        - JS_FreeValue
        - JS_GetIterator2
        - JS_GetOpaque2
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsNull
        - JS_IsObject
        - JS_IsUndefined
        - JS_IteratorClose
        - JS_IteratorNext
        - JS_ThrowTypeError
        - JS_ToBoolFree
        - __JS_NewFloat64
        - abort
      functionUses:    0
      BranchProfiles:
        - Branch String:   'quickjs.c:43788,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:43776,10'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:43780,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:43793,26'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:43795,26'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:43796,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43801,24'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:43802,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43803,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43806,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43810,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43816,20'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:43817,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43818,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43829,26'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:43831,26'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:43832,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43836,20'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:43837,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43846,25'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:43849,24'
          Dst:             JS_Call
        - Src:             'quickjs.c:43850,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43851,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43852,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43853,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43856,17'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:43861,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43836,20'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:43837,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:0,0'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43838,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43870,17'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:43872,30'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:43874,30'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:43875,25'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43878,24'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:43879,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43880,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43886,29'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:43889,23'
          Dst:             JS_Call
        - Src:             'quickjs.c:43890,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43891,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43892,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43894,22'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:43895,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43896,21'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:43899,26'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:43900,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43901,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43904,21'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:43904,42'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:43905,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43908,28'
          Dst:             JS_GetIterator2
        - Src:             'quickjs.c:43909,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43910,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43911,25'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43921,26'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:43922,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43919,26'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:43922,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43924,17'
          Dst:             JS_IteratorClose
        - Src:             'quickjs.c:43925,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43929,47'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:43929,73'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:43932,24'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:43933,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43934,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43940,17'
          Dst:             JS_IteratorClose
        - Src:             'quickjs.c:43941,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43954,26'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:43956,26'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:43957,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43960,20'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:43961,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43962,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43968,25'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:43971,19'
          Dst:             JS_Call
        - Src:             'quickjs.c:43972,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43973,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43974,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43984,30'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:43986,30'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:43987,25'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43991,24'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:43992,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43993,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:44000,17'
          Dst:             JS_IteratorClose
        - Src:             'quickjs.c:44008,9'
          Dst:             abort
        - Src:             'quickjs.c:44017,5'
          Dst:             JS_IteratorClose
    - functionName:    js_iterator_concat_return
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43202
      functionLinenumberEnd: 43229
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          124
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - JS_CallFree
        - JS_FreeValue
        - JS_GetOpaque2
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsUndefined
        - JS_ThrowTypeError
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:43206,10'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:43210,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:43212,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:43214,15'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:43215,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43219,15'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:43223,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43224,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43225,5'
          Dst:             JS_FreeValue
    - functionName:    js_iterator_concat_next
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43128
      functionLinenumberEnd: 43198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          223
      EdgeCount:       49
      CyclomaticComplexity: 15
      functionsReached:
        - JS_FreeValue
        - JS_GetIterator2
        - JS_GetOpaque2
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsUndefined
        - JS_IteratorNext2
        - JS_ThrowTypeError
        - JS_ToBoolFree
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:43135,10'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:43139,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:43151,13'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:43152,20'
          Dst:             JS_GetIterator2
        - Src:             'quickjs.c:43153,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43158,13'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:43159,20'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:43160,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43164,16'
          Dst:             JS_IteratorNext2
        - Src:             'quickjs.c:43165,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43171,19'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:43172,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43173,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43178,20'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:43181,19'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:43182,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43186,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43187,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43188,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43191,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43192,13'
          Dst:             JS_FreeValue
    - functionName:    js_iterator_proto_set_toStringTag
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43719
      functionLinenumberEnd: 43737
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          79
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - JS_DefinePropertyValue
        - JS_DupValue
        - JS_GetOwnProperty
        - JS_IsObject
        - JS_SetProperty
        - JS_ThrowTypeError
        - JS_ThrowTypeErrorNotAnObject
        - js_same_value
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:43722,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:43723,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:43724,9'
          Dst:             js_same_value
        - Src:             'quickjs.c:43725,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:43726,11'
          Dst:             JS_GetOwnProperty
        - Src:             'quickjs.c:43730,71'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:43730,13'
          Dst:             JS_SetProperty
        - Src:             'quickjs.c:43733,79'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:43733,13'
          Dst:             JS_DefinePropertyValue
    - functionName:    JS_GetOwnProperty
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8496
      functionLinenumberEnd: 8502
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_GetOwnPropertyInternal
        - JS_ThrowTypeErrorNotAnObject
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:8498,9'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:8501,12'
          Dst:             JS_GetOwnPropertyInternal
    - functionName:    js_iterator_proto_get_toStringTag
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43714
      functionLinenumberEnd: 43715
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_AtomToString
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:43715,12'
          Dst:             JS_AtomToString
    - functionName:    js_iterator_proto_toArray
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43673
      functionLinenumberEnd: 43705
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          128
      EdgeCount:       34
      CyclomaticComplexity: 11
      functionsReached:
        - JS_DefinePropertyValueInt64
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsObject
        - JS_IteratorNext
        - JS_NewArray
        - JS_SetProperty
        - JS_ThrowTypeErrorNotAnObject
        - __JS_NewFloat64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:43679,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:43680,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:43681,14'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:43682,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43684,14'
          Dst:             JS_NewArray
        - Src:             'quickjs.c:43685,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43688,16'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:43689,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43693,13'
          Dst:             JS_DefinePropertyValueInt64
        - Src:             'quickjs.c:43688,16'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:43689,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43697,53'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:43697,9'
          Dst:             JS_SetProperty
        - Src:             'quickjs.c:43699,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43702,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43703,5'
          Dst:             JS_FreeValue
    - functionName:    JS_DefinePropertyValueInt64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10313
      functionLinenumberEnd: 10314
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_DefinePropertyValueValue
        - __JS_NewFloat64
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:10314,55'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:10314,12'
          Dst:             JS_DefinePropertyValueValue
    - functionName:    js_iterator_proto_reduce
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43608
      functionLinenumberEnd: 43669
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          226
      EdgeCount:       42
      CyclomaticComplexity: 13
      functionsReached:
        - JS_Call
        - JS_DupValue
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsObject
        - JS_IteratorClose
        - JS_IteratorNext
        - JS_ThrowTypeError
        - JS_ThrowTypeErrorNotAnObject
        - __JS_NewFloat64
        - check_function
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:43614,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:43615,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:43619,9'
          Dst:             check_function
        - Src:             'quickjs.c:43621,12'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:43622,14'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:43623,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43626,15'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:43629,15'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:43630,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43633,13'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:43639,16'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:43640,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43644,21'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:43648,15'
          Dst:             JS_Call
        - Src:             'quickjs.c:43649,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43650,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43651,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43653,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43639,16'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:43640,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43659,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43660,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43663,5'
          Dst:             JS_IteratorClose
        - Src:             'quickjs.c:43665,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43666,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43667,5'
          Dst:             JS_FreeValue
    - functionName:    js_iterator_proto_func
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43453
      functionLinenumberEnd: 43604
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         78
      ICount:          439
      EdgeCount:       105
      CyclomaticComplexity: 29
      functionsReached:
        - JS_Call
        - JS_DupValue
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsObject
        - JS_IteratorClose
        - JS_IteratorNext
        - JS_ThrowTypeErrorNotAnObject
        - JS_ToBoolFree
        - __JS_NewFloat64
        - abort
        - check_function
      functionUses:    0
      BranchProfiles:
        - Branch String:   'quickjs.c:43473,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:43459,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:43460,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:43464,9'
          Dst:             check_function
        - Src:             'quickjs.c:43466,12'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:43467,14'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:43468,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43564,24'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:43565,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43540,24'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:43541,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43507,24'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:43508,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43478,24'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:43479,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43478,24'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:43479,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43483,29'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:43486,23'
          Dst:             JS_Call
        - Src:             'quickjs.c:43487,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43488,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43489,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43491,22'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:43492,25'
          Dst:             JS_IteratorClose
        - Src:             'quickjs.c:43512,29'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:43515,23'
          Dst:             JS_Call
        - Src:             'quickjs.c:43516,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43517,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43518,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43521,21'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:43522,25'
          Dst:             JS_IteratorClose
        - Src:             'quickjs.c:43523,25'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43530,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43507,24'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:43508,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43545,29'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:43548,23'
          Dst:             JS_Call
        - Src:             'quickjs.c:43549,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43550,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43551,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43553,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43540,24'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:43541,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43564,24'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:43565,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43569,29'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:43572,23'
          Dst:             JS_Call
        - Src:             'quickjs.c:43573,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43574,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43575,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43577,21'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:43578,25'
          Dst:             JS_IteratorClose
        - Src:             'quickjs.c:43591,9'
          Dst:             abort
        - Src:             'quickjs.c:43595,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43596,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43599,5'
          Dst:             JS_IteratorClose
        - Src:             'quickjs.c:43601,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43602,5'
          Dst:             JS_FreeValue
    - functionName:    js_create_iterator_helper
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43360
      functionLinenumberEnd: 43449
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          241
      EdgeCount:       54
      CyclomaticComplexity: 13
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsObject
        - JS_IteratorClose
        - JS_NewObjectClass
        - JS_SetOpaque
        - JS_ThrowRangeError
        - JS_ThrowTypeErrorNotAnObject
        - JS_ToFloat64
        - JS_ToInt64Free
        - JS_ToIntegerFree
        - JS_ToNumber
        - abort
        - check_function
        - js_malloc
      functionUses:    0
      BranchProfiles:
        - Branch String:   'quickjs.c:43371,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:43366,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:43367,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:43377,17'
          Dst:             JS_ToNumber
        - Src:             'quickjs.c:43378,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43381,17'
          Dst:             JS_ToFloat64
        - Src:             'quickjs.c:43382,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43386,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43390,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43396,21'
          Dst:             JS_ToIntegerFree
        - Src:             'quickjs.c:43397,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43399,21'
          Dst:             JS_ToInt64Free
        - Src:             'quickjs.c:43411,17'
          Dst:             check_function
        - Src:             'quickjs.c:43416,9'
          Dst:             abort
        - Src:             'quickjs.c:43420,14'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:43421,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43423,11'
          Dst:             JS_NewObjectClass
        - Src:             'quickjs.c:43424,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43425,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43428,10'
          Dst:             js_malloc
        - Src:             'quickjs.c:43430,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43431,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43435,15'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:43436,16'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:43442,5'
          Dst:             JS_SetOpaque
        - Src:             'quickjs.c:43445,5'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:43447,5'
          Dst:             JS_IteratorClose
    - functionName:    js_iterator_from
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43282
      functionLinenumberEnd: 43333
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          164
      EdgeCount:       41
      CyclomaticComplexity: 13
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_GetIterator2
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsNull
        - JS_IsObject
        - JS_IsString
        - JS_IsUndefined
        - JS_NewObjectClass
        - JS_OrdinaryIsInstanceOf
        - JS_SetOpaque
        - JS_ThrowTypeError
        - js_malloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:43288,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:43289,14'
          Dst:             JS_IsString
        - Src:             'quickjs.c:43290,20'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:43292,14'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:43293,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43295,9'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:43295,30'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:43296,16'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:43298,16'
          Dst:             JS_GetIterator2
        - Src:             'quickjs.c:43299,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43300,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43305,14'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:43306,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43309,11'
          Dst:             JS_OrdinaryIsInstanceOf
        - Src:             'quickjs.c:43313,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43317,15'
          Dst:             JS_NewObjectClass
        - Src:             'quickjs.c:43318,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43320,10'
          Dst:             js_malloc
        - Src:             'quickjs.c:43325,5'
          Dst:             JS_SetOpaque
        - Src:             'quickjs.c:43329,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43330,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43331,5'
          Dst:             JS_FreeValue
    - functionName:    js_iterator_concat
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43239
      functionLinenumberEnd: 43278
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          169
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsFunction
        - JS_IsObject
        - JS_NewObjectClass
        - JS_SetOpaque
        - JS_ThrowTypeError
        - JS_ThrowTypeErrorNotAnObject
        - js_free
        - js_malloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:43243,10'
          Dst:             js_malloc
        - Src:             'quickjs.c:43253,14'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:43254,13'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:43257,18'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:43258,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43260,14'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:43261,13'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:43262,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:43265,35'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:43268,11'
          Dst:             JS_NewObjectClass
        - Src:             'quickjs.c:43269,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:43271,5'
          Dst:             JS_SetOpaque
        - Src:             'quickjs.c:43276,5'
          Dst:             js_free
        - Src:             'quickjs.c:43275,9'
          Dst:             JS_FreeValue
    - functionName:    js_function_proto_lineNumber
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15733
      functionLinenumberEnd: 15744
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          51
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_GetFunctionBytecode
        - find_line_num
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:15734,29'
          Dst:             JS_GetFunctionBytecode
        - Src:             'quickjs.c:15737,20'
          Dst:             find_line_num
    - functionName:    js_function_proto_fileName
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15723
      functionLinenumberEnd: 15729
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          41
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_AtomToString
        - JS_GetFunctionBytecode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:15724,29'
          Dst:             JS_GetFunctionBytecode
        - Src:             'quickjs.c:15726,16'
          Dst:             JS_AtomToString
    - functionName:    js_function_hasInstance
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40795
      functionLinenumberEnd: 40802
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_OrdinaryIsInstanceOf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:40797,11'
          Dst:             JS_OrdinaryIsInstanceOf
    - functionName:    js_function_toString
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40751
      functionLinenumberEnd: 40791
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          100
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - JS_AtomToString
        - JS_ConcatString3
        - JS_GetPropertyInternal
        - JS_IsUndefined
        - JS_NewStringLen
        - check_function
        - js_class_has_bytecode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:40755,9'
          Dst:             check_function
        - Src:             'quickjs.c:40759,9'
          Dst:             js_class_has_bytecode
        - Src:             'quickjs.c:40762,20'
          Dst:             JS_NewStringLen
        - Src:             'quickjs.c:40786,16'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:40787,13'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:40788,20'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:40789,16'
          Dst:             JS_ConcatString3
    - functionName:    js_function_bind
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40666
      functionLinenumberEnd: 40747
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          274
      EdgeCount:       69
      CyclomaticComplexity: 21
      functionsReached:
        - JS_AtomToString
        - JS_ConcatString3
        - JS_DefinePropertyValue
        - JS_DupValue
        - JS_FreeValue
        - JS_GetOwnProperty
        - JS_GetPropertyInternal
        - JS_IsConstructor
        - JS_IsException
        - JS_IsString
        - JS_NewObjectProtoClass
        - __JS_NewFloat64
        - check_function
        - js_malloc
        - max_int
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:40672,9'
          Dst:             check_function
        - Src:             'quickjs.c:40675,16'
          Dst:             JS_NewObjectProtoClass
        - Src:             'quickjs.c:40677,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40680,25'
          Dst:             JS_IsConstructor
        - Src:             'quickjs.c:40681,17'
          Dst:             max_int
        - Src:             'quickjs.c:40682,10'
          Dst:             js_malloc
        - Src:             'quickjs.c:40685,20'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:40686,20'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:40689,23'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:40694,11'
          Dst:             JS_GetOwnProperty
        - Src:             'quickjs.c:40700,19'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:40701,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40722,23'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:40724,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:40728,5'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:40731,13'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:40732,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40734,10'
          Dst:             JS_IsString
        - Src:             'quickjs.c:40735,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:40736,17'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:40738,13'
          Dst:             JS_ConcatString3
        - Src:             'quickjs.c:40739,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40741,5'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:40745,5'
          Dst:             JS_FreeValue
    - functionName:    js_function_call
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40656
      functionLinenumberEnd: 40662
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_Call
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:40658,16'
          Dst:             JS_Call
        - Src:             'quickjs.c:40660,16'
          Dst:             JS_Call
    - functionName:    js_object___lookupGetter__
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40377
      functionLinenumberEnd: 40418
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          131
      EdgeCount:       34
      CyclomaticComplexity: 11
      functionsReached:
        - JS_DupValue
        - JS_FreeAtom
        - JS_FreeValue
        - JS_GetOwnPropertyInternal
        - JS_GetPrototypeFree
        - JS_IsException
        - JS_IsNull
        - JS_ToObject
        - JS_ValueToAtom
        - js_free_desc
        - js_poll_interrupts
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:40383,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:40384,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40386,12'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:40391,20'
          Dst:             JS_GetOwnPropertyInternal
        - Src:             'quickjs.c:40396,23'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:40399,13'
          Dst:             js_free_desc
        - Src:             'quickjs.c:40402,15'
          Dst:             JS_GetPrototypeFree
        - Src:             'quickjs.c:40403,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40405,13'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:40410,13'
          Dst:             js_poll_interrupts
        - Src:             'quickjs.c:40415,5'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:40416,5'
          Dst:             JS_FreeValue
    - functionName:    js_object___defineGetter__
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39629
      functionLinenumberEnd: 39671
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          95
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - JS_DefineProperty
        - JS_FreeAtom
        - JS_FreeValue
        - JS_IsException
        - JS_ToObject
        - JS_ValueToAtom
        - check_function
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39638,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:39639,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39642,9'
          Dst:             check_function
        - Src:             'quickjs.c:39643,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:39646,12'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:39648,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:39663,11'
          Dst:             JS_DefineProperty
        - Src:             'quickjs.c:39664,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:39665,5'
          Dst:             JS_FreeAtom
    - functionName:    js_object_set___proto__
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40293
      functionLinenumberEnd: 40302
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          63
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - JS_IsNull
        - JS_IsObject
        - JS_IsUndefined
        - JS_SetPrototypeInternal
        - JS_ThrowTypeErrorNotAnObject
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:40294,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:40294,37'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:40295,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:40296,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:40296,33'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:40298,9'
          Dst:             JS_SetPrototypeInternal
    - functionName:    js_object_get___proto__
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40280
      functionLinenumberEnd: 40289
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeValue
        - JS_GetPrototype
        - JS_IsException
        - JS_ToObject
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:40283,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:40284,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40286,11'
          Dst:             JS_GetPrototype
        - Src:             'quickjs.c:40287,5'
          Dst:             JS_FreeValue
    - functionName:    js_object_propertyIsEnumerable
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40346
      functionLinenumberEnd: 40373
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          69
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - JS_FreeAtom
        - JS_FreeValue
        - JS_GetOwnPropertyInternal
        - JS_IsException
        - JS_ToObject
        - JS_ValueToAtom
        - js_free_desc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:40352,12'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:40355,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:40356,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40359,16'
          Dst:             JS_GetOwnPropertyInternal
        - Src:             'quickjs.c:40364,9'
          Dst:             js_free_desc
        - Src:             'quickjs.c:40370,5'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:40371,5'
          Dst:             JS_FreeValue
    - functionName:    js_object_isPrototypeOf
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40306
      functionLinenumberEnd: 40342
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          85
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_GetPrototypeFree
        - JS_IsException
        - JS_IsNull
        - JS_IsObject
        - JS_ToObject
        - js_poll_interrupts
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:40312,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:40314,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:40315,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40317,10'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:40319,14'
          Dst:             JS_GetPrototypeFree
        - Src:             'quickjs.c:40320,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40322,13'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:40331,13'
          Dst:             js_poll_interrupts
        - Src:             'quickjs.c:0,0'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:0,0'
          Dst:             JS_FreeValue
    - functionName:    js_object_hasOwnProperty
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39935
      functionLinenumberEnd: 39957
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          56
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeAtom
        - JS_FreeValue
        - JS_GetOwnPropertyInternal
        - JS_IsException
        - JS_ToObject
        - JS_ValueToAtom
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39941,12'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:39944,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:39945,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39946,9'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:39950,11'
          Dst:             JS_GetOwnPropertyInternal
        - Src:             'quickjs.c:39951,5'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:39952,5'
          Dst:             JS_FreeValue
    - functionName:    js_object_valueOf
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39987
      functionLinenumberEnd: 39988
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_ToObject
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39988,12'
          Dst:             JS_ToObject
    - functionName:    js_object_toLocaleString
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40048
      functionLinenumberEnd: 40049
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_Invoke
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:40049,12'
          Dst:             JS_Invoke
    - functionName:    JS_DefinePropertyDesc
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39460
      functionLinenumberEnd: 39471
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_DefineProperty
        - js_free_desc
        - js_obj_to_desc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39464,9'
          Dst:             js_obj_to_desc
        - Src:             'quickjs.c:39467,11'
          Dst:             JS_DefineProperty
        - Src:             'quickjs.c:39469,5'
          Dst:             js_free_desc
    - functionName:    js_obj_to_desc
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39380
      functionLinenumberEnd: 39455
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         57
      ICount:          326
      EdgeCount:       79
      CyclomaticComplexity: 24
      functionsReached:
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_HasProperty
        - JS_IsException
        - JS_IsFunction
        - JS_IsObject
        - JS_IsUndefined
        - JS_ThrowTypeError
        - JS_ThrowTypeErrorNotAnObject
        - JS_ToBoolFree
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39384,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:39385,9'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:39392,9'
          Dst:             JS_HasProperty
        - Src:             'quickjs.c:39393,24'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:39394,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39397,13'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:39400,9'
          Dst:             JS_HasProperty
        - Src:             'quickjs.c:39401,24'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:39402,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39405,13'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:39408,9'
          Dst:             JS_HasProperty
        - Src:             'quickjs.c:39410,15'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:39411,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39414,9'
          Dst:             JS_HasProperty
        - Src:             'quickjs.c:39415,24'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:39416,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39419,13'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:39422,9'
          Dst:             JS_HasProperty
        - Src:             'quickjs.c:39424,18'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:39425,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39426,15'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:39426,41'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:39431,9'
          Dst:             JS_HasProperty
        - Src:             'quickjs.c:39433,18'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:39434,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39435,15'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:39435,41'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:0,0'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:39451,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:39452,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:39453,5'
          Dst:             JS_FreeValue
    - functionName:    JS_ObjectDefineProperties
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39476
      functionLinenumberEnd: 39510
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          106
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - JS_DefinePropertyDesc
        - JS_FreePropertyEnum
        - JS_FreeValue
        - JS_GetOwnPropertyNamesInternal
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsObject
        - JS_ThrowTypeErrorNotAnObject
        - JS_ToObject
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39483,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:39484,9'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:39488,13'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:39489,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39493,9'
          Dst:             JS_GetOwnPropertyNamesInternal
        - Src:             'quickjs.c:39496,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:39497,16'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:39498,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39500,13'
          Dst:             JS_DefinePropertyDesc
        - Src:             'quickjs.c:39506,5'
          Dst:             JS_FreePropertyEnum
        - Src:             'quickjs.c:39507,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:39508,5'
          Dst:             JS_FreeValue
    - functionName:    js_object_hasOwn
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39961
      functionLinenumberEnd: 39983
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeAtom
        - JS_FreeValue
        - JS_GetOwnPropertyInternal
        - JS_IsException
        - JS_ToObject
        - JS_ValueToAtom
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39967,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:39968,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39970,12'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:39972,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:39976,11'
          Dst:             JS_GetOwnPropertyInternal
        - Src:             'quickjs.c:39977,5'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:39978,5'
          Dst:             JS_FreeValue
    - functionName:    js_object_fromEntries
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40179
      functionLinenumberEnd: 40241
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          168
      EdgeCount:       42
      CyclomaticComplexity: 13
      functionsReached:
        - JS_DefinePropertyValueValue
        - JS_FreeValue
        - JS_GetIterator
        - JS_GetPropertyInternal
        - JS_GetPropertyUint32
        - JS_IsException
        - JS_IsObject
        - JS_IteratorClose
        - JS_IteratorNext
        - JS_NewObject
        - JS_ThrowTypeErrorNotAnObject
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:40188,11'
          Dst:             JS_NewObject
        - Src:             'quickjs.c:40189,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40192,12'
          Dst:             JS_GetIterator
        - Src:             'quickjs.c:40193,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40195,19'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:40196,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40201,16'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:40202,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40209,14'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:40210,13'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:40213,15'
          Dst:             JS_GetPropertyUint32
        - Src:             'quickjs.c:40214,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40216,17'
          Dst:             JS_GetPropertyUint32
        - Src:             'quickjs.c:40217,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40218,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:40221,13'
          Dst:             JS_DefinePropertyValueValue
        - Src:             'quickjs.c:40224,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:40227,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:40201,16'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:40202,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40229,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:40230,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:40233,9'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:40235,9'
          Dst:             JS_IteratorClose
        - Src:             'quickjs.c:40237,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:40238,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:40239,5'
          Dst:             JS_FreeValue
    - functionName:    js_object_isSealed
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40133
      functionLinenumberEnd: 40175
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          137
      EdgeCount:       39
      CyclomaticComplexity: 12
      functionsReached:
        - JS_FreePropertyEnum
        - JS_GetOwnPropertyInternal
        - JS_GetOwnPropertyNamesInternal
        - JS_IsExtensible
        - JS_IsObject
        - js_free_desc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:40140,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:40145,9'
          Dst:             JS_GetOwnPropertyNamesInternal
        - Src:             'quickjs.c:40152,15'
          Dst:             JS_GetOwnPropertyInternal
        - Src:             'quickjs.c:40156,13'
          Dst:             js_free_desc
        - Src:             'quickjs.c:40164,11'
          Dst:             JS_IsExtensible
        - Src:             'quickjs.c:0,0'
          Dst:             JS_FreePropertyEnum
    - functionName:    js_object_assign
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40054
      functionLinenumberEnd: 40078
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          105
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - JS_CopyDataProperties
        - JS_FreeValue
        - JS_IsException
        - JS_IsNull
        - JS_IsUndefined
        - JS_ToObject
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:40060,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:40061,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40064,14'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:40064,37'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:40065,17'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:40066,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40068,17'
          Dst:             JS_CopyDataProperties
        - Src:             'quickjs.c:40070,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:40075,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:40076,5'
          Dst:             JS_FreeValue
    - functionName:    js_object_is
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40245
      functionLinenumberEnd: 40246
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_same_value
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:40246,28'
          Dst:             js_same_value
    - functionName:    js_object_getOwnPropertyDescriptors
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39739
      functionLinenumberEnd: 39786
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          158
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - JS_AtomToValue
        - JS_DefinePropertyValue
        - JS_FreePropertyEnum
        - JS_FreeValue
        - JS_GetOwnPropertyNamesInternal
        - JS_IsException
        - JS_IsUndefined
        - JS_NewObject
        - JS_ToObject
        - js_object_getOwnPropertyDescriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39747,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:39748,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39752,9'
          Dst:             JS_GetOwnPropertyNamesInternal
        - Src:             'quickjs.c:39755,9'
          Dst:             JS_NewObject
        - Src:             'quickjs.c:39756,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39762,21'
          Dst:             JS_AtomToValue
        - Src:             'quickjs.c:39763,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39767,16'
          Dst:             js_object_getOwnPropertyDescriptor
        - Src:             'quickjs.c:39768,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:39769,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39771,14'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:39772,17'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:39777,5'
          Dst:             JS_FreePropertyEnum
        - Src:             'quickjs.c:39778,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:39782,5'
          Dst:             JS_FreePropertyEnum
        - Src:             'quickjs.c:39783,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:39784,5'
          Dst:             JS_FreeValue
    - functionName:    js_object_getOwnPropertyDescriptor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39675
      functionLinenumberEnd: 39735
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          220
      EdgeCount:       54
      CyclomaticComplexity: 17
      functionsReached:
        - JS_DefinePropertyValue
        - JS_DupValue
        - JS_FreeAtom
        - JS_FreeValue
        - JS_GetOwnPropertyInternal
        - JS_IsException
        - JS_NewObject
        - JS_ThrowTypeErrorNotAnObject
        - JS_ToObject
        - JS_ValueToAtom
        - js_free_desc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39685,20'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:39686,15'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:39688,15'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:39689,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39693,12'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:39698,15'
          Dst:             JS_GetOwnPropertyInternal
        - Src:             'quickjs.c:39702,19'
          Dst:             JS_NewObject
        - Src:             'quickjs.c:39703,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39707,67'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:39707,21'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:39708,67'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:39708,21'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:39711,69'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:39711,21'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:39712,21'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:39716,17'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:39718,17'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:39721,13'
          Dst:             js_free_desc
        - Src:             'quickjs.c:39724,5'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:39725,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:39729,5'
          Dst:             js_free_desc
        - Src:             'quickjs.c:39730,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:39732,5'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:39733,5'
          Dst:             JS_FreeValue
    - functionName:    js_object_preventExtensions
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39910
      functionLinenumberEnd: 39931
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          75
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached:
        - JS_DupValue
        - JS_PreventExtensions
        - JS_ThrowTypeError
        - JS_ThrowTypeErrorNotAnObject
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39917,20'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:39919,20'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:39921,11'
          Dst:             JS_PreventExtensions
        - Src:             'quickjs.c:39928,20'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:39929,16'
          Dst:             JS_DupValue
    - functionName:    JS_PreventExtensions
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8523
      functionLinenumberEnd: 8549
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          114
      EdgeCount:       33
      CyclomaticComplexity: 11
      functionsReached:
        - array_buffer_is_resizable
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:8538,18'
          Dst:             array_buffer_is_resizable
    - functionName:    js_object_isExtensible
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39890
      functionLinenumberEnd: 39906
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          49
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - JS_IsExtensible
        - JS_ThrowTypeErrorNotAnObject
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39897,20'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:39901,11'
          Dst:             JS_IsExtensible
    - functionName:    js_object_getOwnPropertySymbols
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39876
      functionLinenumberEnd: 39877
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_GetOwnPropertyNames2
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39877,12'
          Dst:             JS_GetOwnPropertyNames2
    - functionName:    js_object_getOwnPropertyNames
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39869
      functionLinenumberEnd: 39870
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_GetOwnPropertyNames2
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39870,12'
          Dst:             JS_GetOwnPropertyNames2
    - functionName:    js_object_defineProperties
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39616
      functionLinenumberEnd: 39624
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_DupValue
        - JS_ObjectDefineProperties
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39620,9'
          Dst:             JS_ObjectDefineProperties
        - Src:             'quickjs.c:39623,16'
          Dst:             JS_DupValue
    - functionName:    js_object_defineProperty
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39586
      functionLinenumberEnd: 39612
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          83
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - JS_DefinePropertyDesc
        - JS_DupValue
        - JS_FreeAtom
        - JS_ThrowTypeErrorNotAnObject
        - JS_ValueToAtom
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39596,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:39597,12'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:39603,11'
          Dst:             JS_DefinePropertyDesc
        - Src:             'quickjs.c:39604,5'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:39610,16'
          Dst:             JS_DupValue
    - functionName:    js_object_setPrototypeOf
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39575
      functionLinenumberEnd: 39581
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_DupValue
        - JS_SetPrototypeInternal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39578,9'
          Dst:             JS_SetPrototypeInternal
        - Src:             'quickjs.c:39580,12'
          Dst:             JS_DupValue
    - functionName:    js_object_getPrototypeOf
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39559
      functionLinenumberEnd: 39571
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          57
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - JS_GetPrototype
        - JS_ThrowTypeErrorNotAnObject
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39568,20'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:39570,12'
          Dst:             JS_GetPrototype
    - functionName:    js_object_create
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39537
      functionLinenumberEnd: 39555
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          80
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_IsNull
        - JS_IsObject
        - JS_IsUndefined
        - JS_NewObjectProto
        - JS_ObjectDefineProperties
        - JS_ThrowTypeError
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39542,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:39542,33'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:39543,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:39544,11'
          Dst:             JS_NewObjectProto
        - Src:             'quickjs.c:39545,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39548,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:39549,13'
          Dst:             JS_ObjectDefineProperties
        - Src:             'quickjs.c:39550,13'
          Dst:             JS_FreeValue
    - functionName:    JS_FlattenIntoArray
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42550
      functionLinenumberEnd: 42605
      functionDepth:   0
      returnType:      size_t
      argCount:        10
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - size_t
        - size_t
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          221
      EdgeCount:       55
      CyclomaticComplexity: 17
      functionsReached:
        - JS_Call
        - JS_DefinePropertyValueInt64
        - JS_FlattenIntoArray
        - JS_FreeValue
        - JS_IsArray
        - JS_IsException
        - JS_IsUndefined
        - JS_ThrowStackOverflow
        - JS_ThrowTypeError
        - JS_TryGetPropertyInt64
        - __JS_NewFloat64
        - js_check_stack_overflow
        - js_get_length64
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:42555,9'
          Dst:             js_check_stack_overflow
        - Src:             'quickjs.c:42556,9'
          Dst:             JS_ThrowStackOverflow
        - Src:             'quickjs.c:42561,19'
          Dst:             JS_TryGetPropertyInt64
        - Src:             'quickjs.c:42566,14'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:42567,47'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:42568,23'
          Dst:             JS_Call
        - Src:             'quickjs.c:42569,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42570,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42571,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:42575,24'
          Dst:             JS_IsArray
        - Src:             'quickjs.c:42579,21'
          Dst:             js_get_length64
        - Src:             'quickjs.c:42581,31'
          Dst:             JS_FlattenIntoArray
        - Src:             'quickjs.c:42587,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42592,13'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:42595,13'
          Dst:             JS_DefinePropertyValueInt64
        - Src:             'quickjs.c:42603,5'
          Dst:             JS_FreeValue
    - functionName:    JS_TryGetPropertyInt64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8715
      functionLinenumberEnd: 8742
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          81
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - JS_FreeAtom
        - JS_GetPropertyInternal
        - JS_GetPropertyValue
        - JS_HasProperty
        - JS_IsException
        - JS_NewAtomInt64
        - __JS_AtomFromUInt32
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:8722,44'
          Dst:             __JS_AtomFromUInt32
        - Src:             'quickjs.c:8722,19'
          Dst:             JS_HasProperty
        - Src:             'quickjs.c:8724,19'
          Dst:             JS_GetPropertyValue
        - Src:             'quickjs.c:8725,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:8729,16'
          Dst:             JS_NewAtomInt64
        - Src:             'quickjs.c:8732,23'
          Dst:             JS_HasProperty
        - Src:             'quickjs.c:8734,23'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:8735,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:8738,13'
          Dst:             JS_FreeAtom
    - functionName:    JS_IsArray
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14158
      functionLinenumberEnd: 14167
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          43
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - js_resolve_proxy
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:14159,9'
          Dst:             js_resolve_proxy
    - functionName:    js_resolve_proxy
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50716
      functionLinenumberEnd: 50739
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          68
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - JS_ThrowStackOverflow
        - JS_ThrowTypeErrorRevokedProxy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:50727,17'
          Dst:             JS_ThrowStackOverflow
        - Src:             'quickjs.c:50733,17'
          Dst:             JS_ThrowTypeErrorRevokedProxy
    - functionName:    js_is_fast_array
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16414
      functionLinenumberEnd: 16423
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          38
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_array_cmp_generic
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42666
      functionLinenumberEnd: 42725
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          174
      EdgeCount:       42
      CyclomaticComplexity: 13
      functionsReached:
        - JS_Call
        - JS_IsException
        - JS_ToFloat64Free
        - JS_ToString
        - js_string_compare
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:42682,14'
          Dst:             memcmp
        - Src:             'quickjs.c:42686,15'
          Dst:             JS_Call
        - Src:             'quickjs.c:42687,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:42694,17'
          Dst:             JS_ToFloat64Free
        - Src:             'quickjs.c:42703,27'
          Dst:             JS_ToString
        - Src:             'quickjs.c:42704,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:42709,27'
          Dst:             JS_ToString
        - Src:             'quickjs.c:42710,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:42714,15'
          Dst:             js_string_compare
    - functionName:    js_object_toString
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39993
      functionLinenumberEnd: 40044
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          157
      EdgeCount:       39
      CyclomaticComplexity: 9
      functionsReached:
        - JS_AtomToString
        - JS_ConcatString3
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsArray
        - JS_IsException
        - JS_IsFunction
        - JS_IsNull
        - JS_IsString
        - JS_IsUndefined
        - JS_ToObject
        - js_new_string8
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs.c:40018,13'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:39999,9'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:40000,15'
          Dst:             js_new_string8
        - Src:             'quickjs.c:40001,16'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:40002,15'
          Dst:             js_new_string8
        - Src:             'quickjs.c:40004,15'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:40005,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40007,20'
          Dst:             JS_IsArray
        - Src:             'quickjs.c:40009,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:40014,20'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:40034,15'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:40035,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:40036,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40038,14'
          Dst:             JS_IsString
        - Src:             'quickjs.c:40039,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:40040,19'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:40043,12'
          Dst:             JS_ConcatString3
    - functionName:    JS_isConcatSpreadable
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41328
      functionLinenumberEnd: 41339
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          45
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - JS_GetPropertyInternal
        - JS_IsArray
        - JS_IsException
        - JS_IsObject
        - JS_IsUndefined
        - JS_ToBoolFree
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:41331,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:41333,11'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:41334,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41336,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:41337,16'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:41338,12'
          Dst:             JS_IsArray
    - functionName:    JS_ArraySpeciesCreate
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41276
      functionLinenumberEnd: 41318
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          166
      EdgeCount:       39
      CyclomaticComplexity: 13
      functionsReached:
        - JS_CallConstructor
        - JS_FreeValue
        - JS_GetFunctionRealm
        - JS_GetPropertyInternal
        - JS_IsArray
        - JS_IsConstructor
        - JS_IsException
        - JS_IsNull
        - JS_IsObject
        - JS_IsUndefined
        - js_array_constructor
        - js_same_value
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:41281,11'
          Dst:             JS_IsArray
        - Src:             'quickjs.c:41285,16'
          Dst:             js_array_constructor
        - Src:             'quickjs.c:41286,12'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:41287,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41289,9'
          Dst:             JS_IsConstructor
        - Src:             'quickjs.c:41291,17'
          Dst:             JS_GetFunctionRealm
        - Src:             'quickjs.c:41293,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41297,13'
          Dst:             js_same_value
        - Src:             'quickjs.c:41298,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41302,9'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:41303,19'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:41304,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41305,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41308,13'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:41311,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:41312,16'
          Dst:             js_array_constructor
        - Src:             'quickjs.c:41314,15'
          Dst:             JS_CallConstructor
        - Src:             'quickjs.c:41315,9'
          Dst:             JS_FreeValue
    - functionName:    js_array_constructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41085
      functionLinenumberEnd: 41108
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          135
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_IsNumber
        - JS_SetProperty
        - JS_SetPropertyUint32
        - JS_ToArrayLengthFree
        - __JS_NewFloat64
        - js_create_from_ctor
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:41089,11'
          Dst:             js_create_from_ctor
        - Src:             'quickjs.c:41090,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41092,22'
          Dst:             JS_IsNumber
        - Src:             'quickjs.c:41094,45'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:41094,13'
          Dst:             JS_ToArrayLengthFree
        - Src:             'quickjs.c:41096,54'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:41096,13'
          Dst:             JS_SetProperty
        - Src:             'quickjs.c:41100,51'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:41100,17'
          Dst:             JS_SetPropertyUint32
        - Src:             'quickjs.c:41106,5'
          Dst:             JS_FreeValue
    - functionName:    js_allocate_fast_array
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9175
      functionLinenumberEnd: 9198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          80
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_NewArray
        - JS_ThrowRangeError
        - expand_fast_array
        - set_value
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:9181,16'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:9182,11'
          Dst:             JS_NewArray
        - Src:             'quickjs.c:9183,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:9187,13'
          Dst:             expand_fast_array
        - Src:             'quickjs.c:9188,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9195,9'
          Dst:             set_value
    - functionName:    js_array_flatten
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42609
      functionLinenumberEnd: 42649
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          146
      EdgeCount:       34
      CyclomaticComplexity: 11
      functionsReached:
        - JS_ArraySpeciesCreate
        - JS_FlattenIntoArray
        - JS_FreeValue
        - JS_IsException
        - JS_IsUndefined
        - JS_ToInt32Sat
        - JS_ToObject
        - check_function
        - js_get_length64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:42616,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:42617,9'
          Dst:             js_get_length64
        - Src:             'quickjs.c:42628,13'
          Dst:             check_function
        - Src:             'quickjs.c:42631,26'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:42632,17'
          Dst:             JS_ToInt32Sat
        - Src:             'quickjs.c:42636,11'
          Dst:             JS_ArraySpeciesCreate
        - Src:             'quickjs.c:42637,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:42639,9'
          Dst:             JS_FlattenIntoArray
        - Src:             'quickjs.c:42642,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42646,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42647,5'
          Dst:             JS_FreeValue
    - functionName:    js_array_copyWithin
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42512
      functionLinenumberEnd: 42543
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          135
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - JS_CopySubArray
        - JS_FreeValue
        - JS_IsUndefined
        - JS_ToInt64Clamp
        - JS_ToObject
        - js_get_length64
        - min_int64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:42516,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:42517,9'
          Dst:             js_get_length64
        - Src:             'quickjs.c:42520,9'
          Dst:             JS_ToInt64Clamp
        - Src:             'quickjs.c:42523,9'
          Dst:             JS_ToInt64Clamp
        - Src:             'quickjs.c:42527,22'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:42528,13'
          Dst:             JS_ToInt64Clamp
        - Src:             'quickjs.c:42532,13'
          Dst:             min_int64
        - Src:             'quickjs.c:42534,9'
          Dst:             JS_CopySubArray
        - Src:             'quickjs.c:42541,5'
          Dst:             JS_FreeValue
    - functionName:    min_int64
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          16
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_CopySubArray
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41016
      functionLinenumberEnd: 41081
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         54
      ICount:          250
      EdgeCount:       75
      CyclomaticComplexity: 23
      functionsReached:
        - JS_DeletePropertyInt64
        - JS_DupValue
        - JS_SetPropertyInt64
        - JS_TryGetPropertyInt64
        - min_int64
        - set_value
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:41047,21'
          Dst:             min_int64
        - Src:             'quickjs.c:41048,21'
          Dst:             min_int64
        - Src:             'quickjs.c:41051,31'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:41050,21'
          Dst:             set_value
        - Src:             'quickjs.c:41054,21'
          Dst:             min_int64
        - Src:             'quickjs.c:41055,21'
          Dst:             min_int64
        - Src:             'quickjs.c:41058,31'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:41057,21'
          Dst:             set_value
        - Src:             'quickjs.c:41063,27'
          Dst:             JS_TryGetPropertyInt64
        - Src:             'quickjs.c:41068,21'
          Dst:             JS_SetPropertyInt64
        - Src:             'quickjs.c:41071,21'
          Dst:             JS_DeletePropertyInt64
    - functionName:    JS_DeletePropertyInt64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10542
      functionLinenumberEnd: 10556
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          36
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_DeleteProperty
        - JS_FreeAtom
        - JS_NewAtomInt64
        - __JS_AtomFromUInt32
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:10548,44'
          Dst:             __JS_AtomFromUInt32
        - Src:             'quickjs.c:10548,16'
          Dst:             JS_DeleteProperty
        - Src:             'quickjs.c:10550,12'
          Dst:             JS_NewAtomInt64
        - Src:             'quickjs.c:10553,11'
          Dst:             JS_DeleteProperty
        - Src:             'quickjs.c:10554,5'
          Dst:             JS_FreeAtom
    - functionName:    js_array_toSpliced
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42432
      functionLinenumberEnd: 42508
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         69
      ICount:          377
      EdgeCount:       94
      CyclomaticComplexity: 27
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_ThrowTypeError
        - JS_ToInt64Clamp
        - JS_ToObject
        - JS_TryGetPropertyInt64
        - __assert_fail
        - js_allocate_fast_array
        - js_get_fast_array
        - js_get_length64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:42443,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:42444,9'
          Dst:             js_get_length64
        - Src:             'quickjs.c:42449,13'
          Dst:             JS_ToInt64Clamp
        - Src:             'quickjs.c:42456,13'
          Dst:             JS_ToInt64Clamp
        - Src:             'quickjs.c:42465,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:42469,11'
          Dst:             js_allocate_fast_array
        - Src:             'quickjs.c:42470,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:42480,9'
          Dst:             js_get_fast_array
        - Src:             'quickjs.c:42482,21'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:42484,21'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:42486,21'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:42489,23'
          Dst:             JS_TryGetPropertyInt64
        - Src:             'quickjs.c:42492,21'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:42494,23'
          Dst:             JS_TryGetPropertyInt64
        - Src:             'quickjs.c:42498,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:42505,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42506,5'
          Dst:             JS_FreeValue
    - functionName:    js_array_slice
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42325
      functionLinenumberEnd: 42428
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         89
      ICount:          460
      EdgeCount:       123
      CyclomaticComplexity: 36
      functionsReached:
        - JS_ArraySpeciesCreate
        - JS_CopySubArray
        - JS_CreateDataPropertyUint32
        - JS_DeletePropertyInt64
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_IsUndefined
        - JS_SetProperty
        - JS_SetPropertyInt64
        - JS_ThrowTypeError
        - JS_ToInt64Clamp
        - JS_ToObject
        - JS_TryGetPropertyInt64
        - __JS_NewFloat64
        - js_get_fast_array
        - js_get_length64
        - js_is_fast_array
        - max_int64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:42333,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:42334,9'
          Dst:             js_get_length64
        - Src:             'quickjs.c:42337,9'
          Dst:             JS_ToInt64Clamp
        - Src:             'quickjs.c:42350,17'
          Dst:             JS_ToInt64Clamp
        - Src:             'quickjs.c:42354,13'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:42361,14'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:42362,17'
          Dst:             JS_ToInt64Clamp
        - Src:             'quickjs.c:42365,17'
          Dst:             max_int64
        - Src:             'quickjs.c:42367,15'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:42368,11'
          Dst:             JS_ArraySpeciesCreate
        - Src:             'quickjs.c:42369,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42370,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:42380,9'
          Dst:             js_get_fast_array
        - Src:             'quickjs.c:42381,9'
          Dst:             js_is_fast_array
        - Src:             'quickjs.c:42384,58'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:42384,17'
          Dst:             JS_CreateDataPropertyUint32
        - Src:             'quickjs.c:42390,20'
          Dst:             JS_TryGetPropertyInt64
        - Src:             'quickjs.c:42394,17'
          Dst:             JS_CreateDataPropertyUint32
        - Src:             'quickjs.c:42398,50'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:42398,9'
          Dst:             JS_SetProperty
        - Src:             'quickjs.c:42404,17'
          Dst:             JS_CopySubArray
        - Src:             'quickjs.c:42410,21'
          Dst:             JS_DeletePropertyInt64
        - Src:             'quickjs.c:42415,58'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:42415,17'
          Dst:             JS_SetPropertyInt64
        - Src:             'quickjs.c:42418,54'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:42418,13'
          Dst:             JS_SetProperty
        - Src:             'quickjs.c:42421,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42425,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42426,5'
          Dst:             JS_FreeValue
    - functionName:    js_array_toSorted
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42819
      functionLinenumberEnd: 42867
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          183
      EdgeCount:       43
      CyclomaticComplexity: 13
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_IsFunction
        - JS_IsUndefined
        - JS_ThrowTypeError
        - JS_ToObject
        - JS_TryGetPropertyInt64
        - js_allocate_fast_array
        - js_array_sort
        - js_get_fast_array
        - js_get_length64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:42826,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:42826,37'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:42828,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:42832,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:42833,9'
          Dst:             js_get_length64
        - Src:             'quickjs.c:42836,11'
          Dst:             js_allocate_fast_array
        - Src:             'quickjs.c:42837,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:42844,13'
          Dst:             js_get_fast_array
        - Src:             'quickjs.c:42846,25'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:42849,27'
          Dst:             JS_TryGetPropertyInt64
        - Src:             'quickjs.c:42855,11'
          Dst:             js_array_sort
        - Src:             'quickjs.c:42856,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:42858,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42864,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42865,5'
          Dst:             JS_FreeValue
    - functionName:    js_array_sort
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42729
      functionLinenumberEnd: 42811
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         71
      ICount:          347
      EdgeCount:       96
      CyclomaticComplexity: 27
      functionsReached:
        - JS_DeletePropertyInt64
        - JS_FreeValue
        - JS_IsUndefined
        - JS_SetPropertyInt64
        - JS_ToObject
        - JS_TryGetPropertyInt64
        - check_function
        - js_array_cmp_generic
        - js_free
        - js_get_length64
        - js_realloc2
        - rqsort
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:42737,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:42738,13'
          Dst:             check_function
        - Src:             'quickjs.c:42742,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:42743,9'
          Dst:             js_get_length64
        - Src:             'quickjs.c:42752,25'
          Dst:             js_realloc2
        - Src:             'quickjs.c:42759,19'
          Dst:             JS_TryGetPropertyInt64
        - Src:             'quickjs.c:42764,13'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:42772,5'
          Dst:             rqsort
        - Src:             'quickjs.c:42772,5'
          Dst:             js_array_cmp_generic
        - Src:             'quickjs.c:42779,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42781,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42783,17'
          Dst:             JS_SetPropertyInt64
        - Src:             'quickjs.c:42790,5'
          Dst:             js_free
        - Src:             'quickjs.c:42792,13'
          Dst:             JS_SetPropertyInt64
        - Src:             'quickjs.c:42796,13'
          Dst:             JS_DeletePropertyInt64
        - Src:             'quickjs.c:42803,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42805,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42807,5'
          Dst:             js_free
        - Src:             'quickjs.c:42809,5'
          Dst:             JS_FreeValue
    - functionName:    js_array_toReversed
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42281
      functionLinenumberEnd: 42321
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          134
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_ToObject
        - JS_TryGetPropertyInt64
        - js_allocate_fast_array
        - js_get_fast_array
        - js_get_length64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:42289,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:42290,9'
          Dst:             js_get_length64
        - Src:             'quickjs.c:42293,11'
          Dst:             js_allocate_fast_array
        - Src:             'quickjs.c:42294,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:42302,13'
          Dst:             js_get_fast_array
        - Src:             'quickjs.c:42304,25'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:42308,27'
          Dst:             JS_TryGetPropertyInt64
        - Src:             'quickjs.c:42318,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42319,5'
          Dst:             JS_FreeValue
    - functionName:    js_array_reverse
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42208
      functionLinenumberEnd: 42273
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          227
      EdgeCount:       64
      CyclomaticComplexity: 19
      functionsReached:
        - JS_DeletePropertyInt64
        - JS_FreeValue
        - JS_SetPropertyInt64
        - JS_ToObject
        - JS_TryGetPropertyInt64
        - js_get_fast_array
        - js_get_length64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:42216,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:42217,9'
          Dst:             js_get_length64
        - Src:             'quickjs.c:42221,9'
          Dst:             js_get_fast_array
        - Src:             'quickjs.c:42235,21'
          Dst:             JS_TryGetPropertyInt64
        - Src:             'quickjs.c:42238,21'
          Dst:             JS_TryGetPropertyInt64
        - Src:             'quickjs.c:42242,17'
          Dst:             JS_SetPropertyInt64
        - Src:             'quickjs.c:42246,21'
          Dst:             JS_SetPropertyInt64
        - Src:             'quickjs.c:42252,21'
          Dst:             JS_DeletePropertyInt64
        - Src:             'quickjs.c:42257,21'
          Dst:             JS_DeletePropertyInt64
        - Src:             'quickjs.c:42259,21'
          Dst:             JS_SetPropertyInt64
        - Src:             'quickjs.c:42270,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42271,5'
          Dst:             JS_FreeValue
    - functionName:    js_array_toString
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42015
      functionLinenumberEnd: 42034
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          65
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_CallFree
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsFunction
        - JS_ToObject
        - js_object_toString
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:42018,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:42019,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:42021,14'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:42022,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:42025,10'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:42027,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42028,15'
          Dst:             js_object_toString
        - Src:             'quickjs.c:42030,15'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:42032,5'
          Dst:             JS_FreeValue
    - functionName:    js_array_join
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42038
      functionLinenumberEnd: 42091
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         56
      ICount:          264
      EdgeCount:       77
      CyclomaticComplexity: 23
      functionsReached:
        - JS_FreeValue
        - JS_GetPropertyUint32
        - JS_IsException
        - JS_IsNull
        - JS_IsUndefined
        - JS_ToLocaleStringFree
        - JS_ToObject
        - JS_ToString
        - js_get_length64
        - string_buffer_concat
        - string_buffer_concat_value_free
        - string_buffer_end
        - string_buffer_free
        - string_buffer_init
        - string_buffer_putc8
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:42045,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:42046,9'
          Dst:             js_get_length64
        - Src:             'quickjs.c:42050,41'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:42051,15'
          Dst:             JS_ToString
        - Src:             'quickjs.c:42052,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:42060,5'
          Dst:             string_buffer_init
        - Src:             'quickjs.c:42070,14'
          Dst:             JS_GetPropertyUint32
        - Src:             'quickjs.c:42071,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:42073,14'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:42073,32'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:42075,22'
          Dst:             JS_ToLocaleStringFree
        - Src:             'quickjs.c:42077,17'
          Dst:             string_buffer_concat_value_free
        - Src:             'quickjs.c:42065,17'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:42067,17'
          Dst:             string_buffer_concat
        - Src:             'quickjs.c:42070,14'
          Dst:             JS_GetPropertyUint32
        - Src:             'quickjs.c:42071,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:42073,14'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:42073,32'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:42075,22'
          Dst:             JS_ToLocaleStringFree
        - Src:             'quickjs.c:42077,17'
          Dst:             string_buffer_concat_value_free
        - Src:             'quickjs.c:42081,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42082,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42083,12'
          Dst:             string_buffer_end
        - Src:             'quickjs.c:42086,5'
          Dst:             string_buffer_free
        - Src:             'quickjs.c:42087,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42089,5'
          Dst:             JS_FreeValue
    - functionName:    js_array_lastIndexOf
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41896
      functionLinenumberEnd: 41931
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          144
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_ToInt64Clamp
        - JS_ToObject
        - JS_TryGetPropertyInt64
        - __JS_NewFloat64
        - js_get_length64
        - js_strict_eq2
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:41901,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:41902,9'
          Dst:             js_get_length64
        - Src:             'quickjs.c:41909,17'
          Dst:             JS_ToInt64Clamp
        - Src:             'quickjs.c:41914,23'
          Dst:             JS_TryGetPropertyInt64
        - Src:             'quickjs.c:41918,40'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:41918,21'
          Dst:             js_strict_eq2
        - Src:             'quickjs.c:41925,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41925,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41926,12'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:41929,5'
          Dst:             JS_FreeValue
    - functionName:    js_array_indexOf
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41847
      functionLinenumberEnd: 41892
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          209
      EdgeCount:       54
      CyclomaticComplexity: 16
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_ToInt64Clamp
        - JS_ToObject
        - JS_TryGetPropertyInt64
        - __JS_NewFloat64
        - js_get_fast_array
        - js_get_length64
        - js_strict_eq2
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:41853,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:41854,9'
          Dst:             js_get_length64
        - Src:             'quickjs.c:41886,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41861,17'
          Dst:             JS_ToInt64Clamp
        - Src:             'quickjs.c:41864,13'
          Dst:             js_get_fast_array
        - Src:             'quickjs.c:41866,40'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:41867,35'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:41866,21'
          Dst:             js_strict_eq2
        - Src:             'quickjs.c:41874,27'
          Dst:             JS_TryGetPropertyInt64
        - Src:             'quickjs.c:41878,40'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:41878,21'
          Dst:             js_strict_eq2
        - Src:             'quickjs.c:41886,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41887,12'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:41890,5'
          Dst:             JS_FreeValue
    - functionName:    js_array_find
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41942
      functionLinenumberEnd: 42011
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         46
      ICount:          245
      EdgeCount:       62
      CyclomaticComplexity: 18
      functionsReached:
        - JS_Call
        - JS_FreeValue
        - JS_GetPropertyValue
        - JS_IsException
        - JS_ToBoolFree
        - JS_ToObject
        - __JS_NewFloat64
        - check_function
        - js_get_length64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:41951,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:41952,9'
          Dst:             js_get_length64
        - Src:             'quickjs.c:41956,9'
          Dst:             check_function
        - Src:             'quickjs.c:41974,21'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:41975,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41977,15'
          Dst:             JS_GetPropertyValue
        - Src:             'quickjs.c:41978,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41983,15'
          Dst:             JS_Call
        - Src:             'quickjs.c:41984,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41986,13'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:41988,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41989,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41992,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41993,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41997,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41998,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42000,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42007,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42008,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42009,5'
          Dst:             JS_FreeValue
    - functionName:    js_array_fill
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41761
      functionLinenumberEnd: 41793
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          141
      EdgeCount:       38
      CyclomaticComplexity: 12
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_IsUndefined
        - JS_SetPropertyInt64
        - JS_ToInt64Clamp
        - JS_ToObject
        - js_get_length64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:41765,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:41766,9'
          Dst:             js_get_length64
        - Src:             'quickjs.c:41770,22'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:41771,13'
          Dst:             JS_ToInt64Clamp
        - Src:             'quickjs.c:41776,22'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:41777,13'
          Dst:             JS_ToInt64Clamp
        - Src:             'quickjs.c:41784,33'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:41783,13'
          Dst:             JS_SetPropertyInt64
        - Src:             'quickjs.c:41791,5'
          Dst:             JS_FreeValue
    - functionName:    js_array_reduce
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41670
      functionLinenumberEnd: 41757
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         58
      ICount:          326
      EdgeCount:       79
      CyclomaticComplexity: 23
      functionsReached:
        - JS_Call
        - JS_DupValue
        - JS_FreeValue
        - JS_GetPropertyInt64
        - JS_IsException
        - JS_ThrowTypeError
        - JS_ToObject
        - JS_TryGetPropertyInt64
        - __JS_NewFloat64
        - check_function
        - js_get_length64
        - js_typed_array_get_length_unsafe
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:41680,15'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:41681,15'
          Dst:             js_typed_array_get_length_unsafe
        - Src:             'quickjs.c:41685,15'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:41686,13'
          Dst:             js_get_length64
        - Src:             'quickjs.c:41691,9'
          Dst:             check_function
        - Src:             'quickjs.c:41696,15'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:41700,17'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:41706,23'
          Dst:             JS_GetPropertyInt64
        - Src:             'quickjs.c:41707,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41711,27'
          Dst:             JS_TryGetPropertyInt64
        - Src:             'quickjs.c:41722,19'
          Dst:             JS_GetPropertyInt64
        - Src:             'quickjs.c:41723,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41727,23'
          Dst:             JS_TryGetPropertyInt64
        - Src:             'quickjs.c:41732,25'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:41733,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41739,20'
          Dst:             JS_Call
        - Src:             'quickjs.c:41740,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41741,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41743,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41745,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41749,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41753,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41754,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41755,5'
          Dst:             JS_FreeValue
    - functionName:    js_array_every
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41513
      functionLinenumberEnd: 41663
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         95
      ICount:          538
      EdgeCount:       121
      CyclomaticComplexity: 28
      functionsReached:
        - JS_ArraySpeciesCreate
        - JS_Call
        - JS_DefinePropertyValueInt64
        - JS_DupValue
        - JS_FreeValue
        - JS_GetPropertyInt64
        - JS_Invoke
        - JS_IsException
        - JS_NewArray
        - JS_SetPropertyValue
        - JS_ToBoolFree
        - JS_ToObject
        - JS_TryGetPropertyInt64
        - __JS_NewFloat64
        - check_exception_free
        - check_function
        - js_get_length64
        - js_typed_array___speciesCreate
        - js_typed_array_get_length_unsafe
      functionUses:    0
      BranchProfiles:
        - Branch String:   'quickjs.c:41540,5'
          Branch Sides:    []
        - Branch String:   'quickjs.c:41597,13'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:41523,15'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:41524,15'
          Dst:             js_typed_array_get_length_unsafe
        - Src:             'quickjs.c:41528,15'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:41529,13'
          Dst:             js_get_length64
        - Src:             'quickjs.c:41537,9'
          Dst:             check_function
        - Src:             'quickjs.c:41551,47'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:41551,15'
          Dst:             JS_ArraySpeciesCreate
        - Src:             'quickjs.c:41552,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41556,15'
          Dst:             JS_ArraySpeciesCreate
        - Src:             'quickjs.c:41557,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41563,15'
          Dst:             js_typed_array___speciesCreate
        - Src:             'quickjs.c:41564,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41568,15'
          Dst:             JS_NewArray
        - Src:             'quickjs.c:41569,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41577,19'
          Dst:             JS_GetPropertyInt64
        - Src:             'quickjs.c:41578,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41582,23'
          Dst:             JS_TryGetPropertyInt64
        - Src:             'quickjs.c:41587,25'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:41588,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41593,19'
          Dst:             JS_Call
        - Src:             'quickjs.c:41594,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41595,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41600,22'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:41607,21'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:41613,21'
          Dst:             JS_DefinePropertyValueInt64
        - Src:             'quickjs.c:41618,21'
          Dst:             JS_SetPropertyValue
        - Src:             'quickjs.c:41623,21'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:41624,68'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:41624,25'
          Dst:             JS_DefinePropertyValueInt64
        - Src:             'quickjs.c:41630,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41633,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41642,15'
          Dst:             js_typed_array___speciesCreate
        - Src:             'quickjs.c:41643,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41646,15'
          Dst:             JS_Invoke
        - Src:             'quickjs.c:41647,13'
          Dst:             check_exception_free
        - Src:             'quickjs.c:41648,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41651,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41654,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41655,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41659,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41660,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41661,5'
          Dst:             JS_FreeValue
    - functionName:    check_exception_free
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38941
      functionLinenumberEnd: 38943
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_FreeValue
        - JS_IsException
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:38942,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:38943,12'
          Dst:             JS_IsException
    - functionName:    js_array_concat
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41436
      functionLinenumberEnd: 41498
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         49
      ICount:          227
      EdgeCount:       67
      CyclomaticComplexity: 20
      functionsReached:
        - JS_ArraySpeciesCreate
        - JS_DefinePropertyValueInt64
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_SetProperty
        - JS_ThrowTypeError
        - JS_ToObject
        - JS_TryGetPropertyInt64
        - JS_isConcatSpreadable
        - __JS_NewFloat64
        - js_get_length64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:41443,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:41444,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41447,11'
          Dst:             JS_ArraySpeciesCreate
        - Src:             'quickjs.c:41448,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41457,15'
          Dst:             JS_isConcatSpreadable
        - Src:             'quickjs.c:41461,17'
          Dst:             js_get_length64
        - Src:             'quickjs.c:41468,23'
          Dst:             JS_TryGetPropertyInt64
        - Src:             'quickjs.c:41472,25'
          Dst:             JS_DefinePropertyValueInt64
        - Src:             'quickjs.c:41482,58'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:41482,17'
          Dst:             JS_DefinePropertyValueInt64
        - Src:             'quickjs.c:41488,50'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:41488,9'
          Dst:             JS_SetProperty
        - Src:             'quickjs.c:0,0'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:41495,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:0,0'
          Dst:             JS_FreeValue
    - functionName:    js_array_with
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41378
      functionLinenumberEnd: 41432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          268
      EdgeCount:       64
      CyclomaticComplexity: 19
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_ThrowRangeError
        - JS_ToInt64Sat
        - JS_ToObject
        - JS_TryGetPropertyInt64
        - js_allocate_fast_array
        - js_get_fast_array
        - js_get_length64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:41386,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:41387,9'
          Dst:             js_get_length64
        - Src:             'quickjs.c:41390,9'
          Dst:             JS_ToInt64Sat
        - Src:             'quickjs.c:41397,9'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:41401,11'
          Dst:             js_allocate_fast_array
        - Src:             'quickjs.c:41402,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41408,9'
          Dst:             js_get_fast_array
        - Src:             'quickjs.c:41410,21'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:41411,17'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:41413,21'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:41416,23'
          Dst:             JS_TryGetPropertyInt64
        - Src:             'quickjs.c:41418,17'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:41420,23'
          Dst:             JS_TryGetPropertyInt64
        - Src:             'quickjs.c:41429,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41430,5'
          Dst:             JS_FreeValue
    - functionName:    js_array_at
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41343
      functionLinenumberEnd: 41374
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          145
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_ToInt64Sat
        - JS_ToObject
        - JS_TryGetPropertyInt64
        - js_get_fast_array
        - js_get_length64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:41349,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:41350,9'
          Dst:             js_get_length64
        - Src:             'quickjs.c:41353,9'
          Dst:             JS_ToInt64Sat
        - Src:             'quickjs.c:41360,16'
          Dst:             js_get_fast_array
        - Src:             'quickjs.c:41361,15'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:41363,23'
          Dst:             JS_TryGetPropertyInt64
        - Src:             'quickjs.c:41369,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41372,5'
          Dst:             JS_FreeValue
    - functionName:    js_array_of
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41231
      functionLinenumberEnd: 41255
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          118
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - JS_CallConstructor
        - JS_CreateDataPropertyUint32
        - JS_DupValue
        - JS_FreeValue
        - JS_IsConstructor
        - JS_IsException
        - JS_NewArray
        - JS_SetProperty
        - __JS_NewFloat64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:41235,9'
          Dst:             JS_IsConstructor
        - Src:             'quickjs.c:41237,15'
          Dst:             JS_CallConstructor
        - Src:             'quickjs.c:41239,15'
          Dst:             JS_NewArray
        - Src:             'quickjs.c:41241,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41244,54'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:41244,13'
          Dst:             JS_CreateDataPropertyUint32
        - Src:             'quickjs.c:41249,50'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:41249,9'
          Dst:             JS_SetProperty
        - Src:             'quickjs.c:41251,9'
          Dst:             JS_FreeValue
    - functionName:    js_array_from
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41112
      functionLinenumberEnd: 41227
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         80
      ICount:          494
      EdgeCount:       111
      CyclomaticComplexity: 33
      functionsReached:
        - JS_Call
        - JS_CallConstructor
        - JS_DefinePropertyValueInt64
        - JS_FreeValue
        - JS_GetIterator2
        - JS_GetPropertyInt64
        - JS_GetPropertyInternal
        - JS_IsConstructor
        - JS_IsException
        - JS_IsFunction
        - JS_IsNull
        - JS_IsUndefined
        - JS_IteratorClose
        - JS_IteratorNext
        - JS_NewArray
        - JS_SetProperty
        - JS_ThrowTypeError
        - JS_ToObject
        - __JS_NewFloat64
        - check_function
        - js_array_constructor
        - js_get_length64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:41131,14'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:41132,17'
          Dst:             check_function
        - Src:             'quickjs.c:41139,12'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:41140,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41142,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:41142,35'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:41143,14'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:41144,13'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:41147,13'
          Dst:             JS_IsConstructor
        - Src:             'quickjs.c:41148,17'
          Dst:             JS_CallConstructor
        - Src:             'quickjs.c:41150,17'
          Dst:             JS_NewArray
        - Src:             'quickjs.c:41151,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41153,20'
          Dst:             JS_GetIterator2
        - Src:             'quickjs.c:41154,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41156,23'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:41157,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41160,17'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:41161,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41168,22'
          Dst:             JS_Call
        - Src:             'quickjs.c:41169,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41171,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41174,17'
          Dst:             JS_DefinePropertyValueInt64
        - Src:             'quickjs.c:41160,17'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:41161,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41179,21'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:41180,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41182,13'
          Dst:             js_get_length64
        - Src:             'quickjs.c:41184,13'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:41186,13'
          Dst:             JS_IsConstructor
        - Src:             'quickjs.c:41187,17'
          Dst:             JS_CallConstructor
        - Src:             'quickjs.c:41189,17'
          Dst:             js_array_constructor
        - Src:             'quickjs.c:41191,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41192,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41195,17'
          Dst:             JS_GetPropertyInt64
        - Src:             'quickjs.c:41196,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41201,22'
          Dst:             JS_Call
        - Src:             'quickjs.c:41202,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41204,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41207,17'
          Dst:             JS_DefinePropertyValueInt64
        - Src:             'quickjs.c:41212,48'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:41212,9'
          Dst:             JS_SetProperty
        - Src:             'quickjs.c:41217,5'
          Dst:             JS_IteratorClose
        - Src:             'quickjs.c:41219,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41222,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41223,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41224,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:41225,5'
          Dst:             JS_FreeValue
    - functionName:    js_array_isArray
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41259
      functionLinenumberEnd: 41266
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_IsArray
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:41261,11'
          Dst:             JS_IsArray
    - functionName:    js_error_toString
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40931
      functionLinenumberEnd: 40956
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          114
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - JS_AtomToString
        - JS_ConcatString
        - JS_ConcatString3
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsEmptyString
        - JS_IsException
        - JS_IsObject
        - JS_IsUndefined
        - JS_ThrowTypeErrorNotAnObject
        - JS_ToStringFree
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:40934,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:40935,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:40936,12'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:40937,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:40938,16'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:40940,16'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:40941,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40944,11'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:40945,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:40946,15'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:40948,15'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:40949,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40950,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:40953,10'
          Dst:             JS_IsEmptyString
        - Src:             'quickjs.c:40953,37'
          Dst:             JS_IsEmptyString
        - Src:             'quickjs.c:40954,16'
          Dst:             JS_ConcatString3
        - Src:             'quickjs.c:40955,12'
          Dst:             JS_ConcatString
    - functionName:    JS_IsEmptyString
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3399
      functionLinenumberEnd: 3400
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_error_isError
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40985
      functionLinenumberEnd: 40986
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_IsError
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:40986,28'
          Dst:             JS_IsError
    - functionName:    JS_IsError
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10606
      functionLinenumberEnd: 10612
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          23
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iterator_to_array
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40818
      functionLinenumberEnd: 40853
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          117
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - JS_DefinePropertyValueInt64
        - JS_FreeValue
        - JS_GetIterator
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IteratorClose
        - JS_IteratorNext
        - JS_NewArray
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:40824,12'
          Dst:             JS_GetIterator
        - Src:             'quickjs.c:40825,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40827,19'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:40828,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40830,9'
          Dst:             JS_NewArray
        - Src:             'quickjs.c:40831,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40834,13'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:40835,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40834,13'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:40835,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40839,13'
          Dst:             JS_DefinePropertyValueInt64
        - Src:             'quickjs.c:40844,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:40845,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:40848,5'
          Dst:             JS_IteratorClose
        - Src:             'quickjs.c:40850,5'
          Dst:             JS_FreeValue
    - functionName:    js_error_constructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40857
      functionLinenumberEnd: 40927
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          217
      EdgeCount:       56
      CyclomaticComplexity: 17
      functionsReached:
        - JS_DefinePropertyValue
        - JS_DupValue
        - JS_FreeValue
        - JS_GetActiveFunction
        - JS_GetFunctionRealm
        - JS_GetPropertyInternal
        - JS_HasProperty
        - JS_IsException
        - JS_IsObject
        - JS_IsUndefined
        - JS_NewObjectProtoClass
        - JS_ToString
        - build_backtrace
        - iterator_to_array
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:40862,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:40863,22'
          Dst:             JS_GetActiveFunction
        - Src:             'quickjs.c:40864,13'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:40865,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40867,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:40871,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:40872,17'
          Dst:             JS_GetFunctionRealm
        - Src:             'quickjs.c:40880,17'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:40882,11'
          Dst:             JS_NewObjectProtoClass
        - Src:             'quickjs.c:40883,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:40884,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40889,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:40890,15'
          Dst:             JS_ToString
        - Src:             'quickjs.c:40891,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40893,9'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:40899,13'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:40900,27'
          Dst:             JS_HasProperty
        - Src:             'quickjs.c:40904,33'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:40905,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40907,17'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:40914,30'
          Dst:             iterator_to_array
        - Src:             'quickjs.c:40915,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40917,9'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:40922,5'
          Dst:             build_backtrace
        - Src:             'quickjs.c:40925,5'
          Dst:             JS_FreeValue
    - functionName:    JS_GetActiveFunction
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16601
      functionLinenumberEnd: 16602
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_function_proto
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40464
      functionLinenumberEnd: 40465
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_SetImmutablePrototype
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7486
      functionLinenumberEnd: 7492
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          21
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ss_check
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35128
      functionLinenumberEnd: 35165
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          106
      EdgeCount:       26
      CyclomaticComplexity: 9
      functionsReached:
        - JS_ThrowInternalError
        - js_resize_array
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:35130,9'
          Dst:             JS_ThrowInternalError
        - Src:             'quickjs.c:35136,13'
          Dst:             JS_ThrowInternalError
        - Src:             'quickjs.c:35143,13'
          Dst:             JS_ThrowInternalError
        - Src:             'quickjs.c:35147,13'
          Dst:             JS_ThrowInternalError
        - Src:             'quickjs.c:35160,9'
          Dst:             js_resize_array
    - functionName:    get_line_col_cached
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21725
      functionLinenumberEnd: 21757
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          125
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - get_line_col
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:21728,20'
          Dst:             get_line_col
        - Src:             'quickjs.c:21736,20'
          Dst:             get_line_col
    - functionName:    get_line_col
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21705
      functionLinenumberEnd: 21721
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          147
      EdgeCount:       47
      CyclomaticComplexity: 14
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    compute_pc2line_info
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33982
      functionLinenumberEnd: 34032
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         30
      ICount:          157
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - dbuf_put_leb128
        - dbuf_put_sleb128
        - dbuf_putc
        - get_line_col_cached
        - js_dbuf_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:33988,9'
          Dst:             js_dbuf_init
        - Src:             'quickjs.c:33990,25'
          Dst:             get_line_col_cached
        - Src:             'quickjs.c:33993,9'
          Dst:             dbuf_put_leb128
        - Src:             'quickjs.c:33994,9'
          Dst:             dbuf_put_leb128
        - Src:             'quickjs.c:34007,24'
          Dst:             get_line_col_cached
        - Src:             'quickjs.c:34017,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34021,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34022,17'
          Dst:             dbuf_put_leb128
        - Src:             'quickjs.c:34023,17'
          Dst:             dbuf_put_sleb128
        - Src:             'quickjs.c:34025,13'
          Dst:             dbuf_put_sleb128
    - functionName:    dbuf_put_leb128
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6979
      functionLinenumberEnd: 6991
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          37
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dbuf_putc
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:6985,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:6987,13'
          Dst:             dbuf_putc
    - functionName:    dbuf_put_sleb128
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6994
      functionLinenumberEnd: 6997
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_put_leb128
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:6996,5'
          Dst:             dbuf_put_leb128
    - functionName:    push_short_int
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34130
      functionLinenumberEnd: 34149
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          60
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - dbuf_put_u16
        - dbuf_put_u32
        - dbuf_putc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:34133,9'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34137,9'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34138,9'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34142,9'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34143,9'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:34147,5'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34148,5'
          Dst:             dbuf_put_u32
    - functionName:    dbuf_put_u16
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 287
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __dbuf_put_u16
        - put_u16
      functionUses:    38
      BranchProfiles:  []
      Callsites:
        - Src:             './cutils.h:289,16'
          Dst:             __dbuf_put_u16
        - Src:             './cutils.h:291,9'
          Dst:             put_u16
    - functionName:    dbuf_put_u32
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 298
      functionLinenumberEnd: 306
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __dbuf_put_u32
        - put_u32
      functionUses:    42
      BranchProfiles:  []
      Callsites:
        - Src:             './cutils.h:300,16'
          Dst:             __dbuf_put_u32
        - Src:             './cutils.h:302,9'
          Dst:             put_u32
    - functionName:    get_i32
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 186
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_reloc
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34035
      functionLinenumberEnd: 34045
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - js_malloc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:34037,10'
          Dst:             js_malloc
    - functionName:    code_has_label
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34048
      functionLinenumberEnd: 34070
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          82
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - get_u32
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:34056,23'
          Dst:             get_u32
        - Src:             'quickjs.c:34063,23'
          Dst:             get_u32
    - functionName:    find_jump_target
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34076
      functionLinenumberEnd: 34126
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          116
      EdgeCount:       30
      CyclomaticComplexity: 6
      functionsReached:
        - __assert_fail
        - get_u32
        - update_label
      functionUses:    3
      BranchProfiles:
        - Branch String:   'quickjs.c:34085,13'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:34080,5'
          Dst:             update_label
        - Src:             'quickjs.c:34082,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:34088,30'
          Dst:             get_u32
        - Src:             'quickjs.c:34094,25'
          Dst:             get_u32
        - Src:             'quickjs.c:34125,5'
          Dst:             update_label
    - functionName:    update_label
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23307
      functionLinenumberEnd: 23314
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          47
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23310,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:23313,5'
          Dst:             __assert_fail
    - functionName:    add_pc2line_info
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33962
      functionLinenumberEnd: 33973
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    32
      BranchProfiles:  []
      Callsites:       []
    - functionName:    put_u8
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 222
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    put_short_code
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34152
      functionLinenumberEnd: 34207
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          131
      EdgeCount:       24
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_put_u16
        - dbuf_putc
      functionUses:    18
      BranchProfiles:
        - Branch String:   'quickjs.c:34155,9'
          Branch Sides:    []
        - Branch String:   'quickjs.c:34189,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:34157,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34160,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34163,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34166,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34169,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34172,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34175,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34178,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34181,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34184,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34191,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34192,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34195,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34196,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34199,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34200,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34205,5'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34206,5'
          Dst:             dbuf_put_u16
    - functionName:    get_u8
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 210
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    find_private_class_field_all
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32814
      functionLinenumberEnd: 32824
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          43
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_loc_or_ref
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32827
      functionLinenumberEnd: 32835
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          26
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dbuf_put_u16
        - dbuf_putc
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:0,0'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32834,5'
          Dst:             dbuf_put_u16
    - functionName:    resolve_scope_private_field1
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32841
      functionLinenumberEnd: 32897
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          140
      EdgeCount:       38
      CyclomaticComplexity: 12
      functionsReached:
        - __JS_ThrowSyntaxErrorAtom
        - capture_var
        - find_private_class_field_all
        - get_closure_var
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:32849,15'
          Dst:             find_private_class_field_all
        - Src:             'quickjs.c:32853,17'
          Dst:             capture_var
        - Src:             'quickjs.c:32854,23'
          Dst:             get_closure_var
        - Src:             'quickjs.c:32871,35'
          Dst:             get_closure_var
        - Src:             'quickjs.c:32885,13'
          Dst:             __JS_ThrowSyntaxErrorAtom
        - Src:             'quickjs.c:32849,15'
          Dst:             find_private_class_field_all
    - functionName:    capture_var
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32322
      functionLinenumberEnd: 32327
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    16
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_closure_var
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32155
      functionLinenumberEnd: 32174
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          94
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - add_closure_var
        - get_closure_var
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:32159,19'
          Dst:             get_closure_var
        - Src:             'quickjs.c:32172,12'
          Dst:             add_closure_var
    - functionName:    add_closure_var
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32113
      functionLinenumberEnd: 32134
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          65
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_DupAtom
        - JS_ThrowInternalError
        - js_resize_array
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:32118,9'
          Dst:             JS_ThrowInternalError
        - Src:             'quickjs.c:32122,9'
          Dst:             js_resize_array
        - Src:             'quickjs.c:32132,20'
          Dst:             JS_DupAtom
    - functionName:    get_with_scope_opcode
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32177
      functionLinenumberEnd: 32182
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          17
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    can_opt_put_global_ref_value
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32195
      functionLinenumberEnd: 32201
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          47
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    optimize_scope_make_ref
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32208
      functionLinenumberEnd: 32245
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          91
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
        - dbuf_put_u16
        - dbuf_putc
        - put_u16
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:32220,9'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32221,9'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:32229,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:32240,5'
          Dst:             put_u16
    - functionName:    can_opt_put_ref_value
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32185
      functionLinenumberEnd: 32191
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          47
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    resolve_pseudo_var
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32263
      functionLinenumberEnd: 32298
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          88
      EdgeCount:       23
      CyclomaticComplexity: 6
      functionsReached:
        - add_var
        - add_var_this
      functionUses:    2
      BranchProfiles:
        - Branch String:   'quickjs.c:32268,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:32272,38'
          Dst:             add_var
        - Src:             'quickjs.c:32278,43'
          Dst:             add_var
        - Src:             'quickjs.c:32284,37'
          Dst:             add_var
        - Src:             'quickjs.c:32290,31'
          Dst:             add_var_this
    - functionName:    add_var
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23599
      functionLinenumberEnd: 23615
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          50
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_DupAtom
        - JS_ThrowInternalError
        - js_resize_array
      functionUses:    21
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23604,9'
          Dst:             JS_ThrowInternalError
        - Src:             'quickjs.c:23607,9'
          Dst:             js_resize_array
        - Src:             'quickjs.c:23612,20'
          Dst:             JS_DupAtom
    - functionName:    add_var_this
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32249
      functionLinenumberEnd: 32258
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          39
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - add_var
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:32251,11'
          Dst:             add_var
    - functionName:    var_object_test
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32305
      functionLinenumberEnd: 32319
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          49
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_DupAtom
        - dbuf_put_u32
        - dbuf_putc
        - dbuf_set_error
        - get_with_scope_opcode
        - new_label_fd
        - update_label
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:32306,19'
          Dst:             get_with_scope_opcode
        - Src:             'quickjs.c:32306,5'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32307,22'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:32307,5'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:32309,24'
          Dst:             new_label_fd
        - Src:             'quickjs.c:32311,13'
          Dst:             dbuf_set_error
        - Src:             'quickjs.c:32315,5'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:32316,5'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32317,5'
          Dst:             update_label
    - functionName:    new_label_fd
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23318
      functionLinenumberEnd: 23334
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - js_resize_array
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23322,9'
          Dst:             js_resize_array
    - functionName:    dbuf_set_error
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 328
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_label_pos
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33577
      functionLinenumberEnd: 33597
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          57
      EdgeCount:       13
      CyclomaticComplexity: 2
      functionsReached:
        - get_u32
      functionUses:    2
      BranchProfiles:
        - Branch String:   'quickjs.c:33582,13'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:33588,25'
          Dst:             get_u32
    - functionName:    instantiate_hoisted_definitions
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33420
      functionLinenumberEnd: 33524
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         63
      ICount:          316
      EdgeCount:       83
      CyclomaticComplexity: 22
      functionsReached:
        - JS_DupAtom
        - JS_FreeAtom
        - abort
        - dbuf_put_u16
        - dbuf_put_u32
        - dbuf_putc
        - dbuf_set_error
        - js_free
        - new_label_fd
        - update_label
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:33427,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:33428,13'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:33429,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:33430,13'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:33436,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:33437,13'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:33438,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:33439,13'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:33447,22'
          Dst:             new_label_fd
        - Src:             'quickjs.c:33449,13'
          Dst:             dbuf_set_error
        - Src:             'quickjs.c:33453,9'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:33454,9'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:33455,9'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:33456,9'
          Dst:             update_label
        - Src:             'quickjs.c:33486,9'
          Dst:             abort
        - Src:             'quickjs.c:33479,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:33480,17'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:33490,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:33491,17'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:33494,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:33495,38'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:33495,21'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:33498,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:33501,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:33502,17'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:33504,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:33505,34'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:33505,17'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:33506,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:33509,9'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:33513,9'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:33515,9'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:33516,9'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:33520,5'
          Dst:             js_free
    - functionName:    skip_dead_code
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33528
      functionLinenumberEnd: 33573
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          128
      EdgeCount:       33
      CyclomaticComplexity: 6
      functionsReached:
        - JS_FreeAtom
        - __assert_fail
        - get_u32
        - update_label
      functionUses:    5
      BranchProfiles:
        - Branch String:   'quickjs.c:33551,13'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:33535,22'
          Dst:             get_u32
        - Src:             'quickjs.c:33538,21'
          Dst:             get_u32
        - Src:             'quickjs.c:33539,17'
          Dst:             update_label
        - Src:             'quickjs.c:33547,13'
          Dst:             __assert_fail
        - Src:             'quickjs.c:33554,25'
          Dst:             get_u32
        - Src:             'quickjs.c:33555,17'
          Dst:             update_label
        - Src:             'quickjs.c:33559,25'
          Dst:             get_u32
        - Src:             'quickjs.c:33560,17'
          Dst:             update_label
        - Src:             'quickjs.c:33565,24'
          Dst:             get_u32
        - Src:             'quickjs.c:33566,17'
          Dst:             JS_FreeAtom
    - functionName:    code_match
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33296
      functionLinenumberEnd: 33417
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         70
      ICount:          373
      EdgeCount:       88
      CyclomaticComplexity: 20
      functionsReached:
        - get_u16
        - get_u32
        - get_u8
      functionUses:    43
      BranchProfiles:
        - Branch String:   'quickjs.c:33341,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:33322,28'
          Dst:             get_u32
        - Src:             'quickjs.c:33361,27'
          Dst:             get_u16
        - Src:             'quickjs.c:33376,28'
          Dst:             get_u32
        - Src:             'quickjs.c:33381,28'
          Dst:             get_u32
        - Src:             'quickjs.c:33382,26'
          Dst:             get_u16
        - Src:             'quickjs.c:33387,27'
          Dst:             get_u32
        - Src:             'quickjs.c:33392,27'
          Dst:             get_u32
        - Src:             'quickjs.c:33393,26'
          Dst:             get_u8
        - Src:             'quickjs.c:33398,27'
          Dst:             get_u32
        - Src:             'quickjs.c:33399,26'
          Dst:             get_u16
        - Src:             'quickjs.c:33404,27'
          Dst:             get_u32
        - Src:             'quickjs.c:33405,28'
          Dst:             get_u32
        - Src:             'quickjs.c:33406,26'
          Dst:             get_u8
    - functionName:    resolve_scope_private_field
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32903
      functionLinenumberEnd: 32998
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          207
      EdgeCount:       43
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupAtom
        - JS_FreeAtom
        - __assert_fail
        - abort
        - dbuf_put_u16
        - dbuf_put_u32
        - dbuf_putc
        - get_loc_or_ref
        - get_private_setter_name
        - resolve_scope_private_field1
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs.c:32912,5'
          Branch Sides:    []
        - Branch String:   'quickjs.c:32915,9'
          Branch Sides:    []
        - Branch String:   'quickjs.c:32948,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:32907,11'
          Dst:             resolve_scope_private_field1
        - Src:             'quickjs.c:32911,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:32918,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32919,13'
          Dst:             get_loc_or_ref
        - Src:             'quickjs.c:32920,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32923,13'
          Dst:             get_loc_or_ref
        - Src:             'quickjs.c:32924,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32926,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32931,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32932,13'
          Dst:             get_loc_or_ref
        - Src:             'quickjs.c:32933,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32934,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32935,13'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:32939,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32940,30'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:32940,13'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:32941,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32944,13'
          Dst:             abort
        - Src:             'quickjs.c:32950,13'
          Dst:             get_loc_or_ref
        - Src:             'quickjs.c:32951,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32956,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32957,30'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:32957,13'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:32958,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32963,38'
          Dst:             get_private_setter_name
        - Src:             'quickjs.c:32966,23'
          Dst:             resolve_scope_private_field1
        - Src:             'quickjs.c:32969,17'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:32972,17'
          Dst:             __assert_fail
        - Src:             'quickjs.c:32973,17'
          Dst:             get_loc_or_ref
        - Src:             'quickjs.c:32974,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32976,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32978,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32979,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32981,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32982,17'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:32983,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32987,13'
          Dst:             abort
        - Src:             'quickjs.c:32991,9'
          Dst:             get_loc_or_ref
        - Src:             'quickjs.c:32992,9'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32995,9'
          Dst:             abort
    - functionName:    get_private_setter_name
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24635
      functionLinenumberEnd: 24636
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_atom_concat_str
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:24636,12'
          Dst:             js_atom_concat_str
    - functionName:    js_atom_concat_str
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3358
      functionLinenumberEnd: 3387
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          65
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_AtomToString
        - JS_FreeCString
        - JS_FreeValue
        - JS_IsException
        - JS_NewAtomLen
        - JS_ToCStringLen
        - js_free
        - js_malloc
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3365,11'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:3366,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:3368,12'
          Dst:             JS_ToCStringLen
        - Src:             'quickjs.c:3371,12'
          Dst:             strlen
        - Src:             'quickjs.c:3372,13'
          Dst:             js_malloc
        - Src:             'quickjs.c:3378,12'
          Dst:             JS_NewAtomLen
        - Src:             'quickjs.c:3379,5'
          Dst:             js_free
        - Src:             'quickjs.c:0,0'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:0,0'
          Dst:             JS_FreeValue
    - functionName:    resolve_scope_var
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32334
      functionLinenumberEnd: 32809
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         321
      ICount:          1497
      EdgeCount:       434
      CyclomaticComplexity: 115
      functionsReached:
        - JS_DupAtom
        - add_arguments_var
        - add_closure_var
        - add_func_var
        - can_opt_put_global_ref_value
        - can_opt_put_ref_value
        - capture_var
        - dbuf_put_u16
        - dbuf_put_u32
        - dbuf_putc
        - find_var
        - get_closure_var
        - optimize_scope_make_ref
        - resolve_pseudo_var
        - var_object_test
      functionUses:    2
      BranchProfiles:
        - Branch String:   'quickjs.c:32408,9'
          Branch Sides:    []
        - Branch String:   'quickjs.c:32665,9'
          Branch Sides:    []
        - Branch String:   'quickjs.c:32723,13'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:32357,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32358,38'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:32358,21'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:32359,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32367,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32368,13'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:32369,13'
          Dst:             var_object_test
        - Src:             'quickjs.c:32378,23'
          Dst:             find_var
        - Src:             'quickjs.c:32382,23'
          Dst:             resolve_pseudo_var
        - Src:             'quickjs.c:32387,23'
          Dst:             add_arguments_var
        - Src:             'quickjs.c:32391,23'
          Dst:             add_func_var
        - Src:             'quickjs.c:32400,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32401,30'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:32401,13'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:32402,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32413,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32414,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32415,17'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:32416,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32417,34'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:32417,17'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:32418,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32419,34'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:32419,17'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:32421,37'
          Dst:             can_opt_put_ref_value
        - Src:             'quickjs.c:32432,28'
          Dst:             optimize_scope_make_ref
        - Src:             'quickjs.c:32438,21'
          Dst:             capture_var
        - Src:             'quickjs.c:32439,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32440,38'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:32440,21'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:32441,21'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:32443,21'
          Dst:             capture_var
        - Src:             'quickjs.c:32444,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32445,38'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:32445,21'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:32446,21'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:32454,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32459,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32468,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32469,17'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:0,0'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32497,17'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:32501,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32508,9'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32509,9'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:32510,9'
          Dst:             var_object_test
        - Src:             'quickjs.c:32514,9'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32515,9'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:32516,9'
          Dst:             var_object_test
        - Src:             'quickjs.c:32528,25'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32529,42'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:32529,25'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:32530,25'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32537,17'
          Dst:             capture_var
        - Src:             'quickjs.c:32538,23'
          Dst:             get_closure_var
        - Src:             'quickjs.c:32540,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32541,21'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:32542,21'
          Dst:             var_object_test
        - Src:             'quickjs.c:32552,23'
          Dst:             find_var
        - Src:             'quickjs.c:32557,23'
          Dst:             resolve_pseudo_var
        - Src:             'quickjs.c:32562,23'
          Dst:             add_arguments_var
        - Src:             'quickjs.c:32567,23'
          Dst:             add_func_var
        - Src:             'quickjs.c:32574,13'
          Dst:             capture_var
        - Src:             'quickjs.c:32575,19'
          Dst:             get_closure_var
        - Src:             'quickjs.c:32578,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32579,13'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:32580,13'
          Dst:             var_object_test
        - Src:             'quickjs.c:32586,13'
          Dst:             capture_var
        - Src:             'quickjs.c:32587,19'
          Dst:             get_closure_var
        - Src:             'quickjs.c:32590,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32591,13'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:32592,13'
          Dst:             var_object_test
        - Src:             'quickjs.c:32616,27'
          Dst:             get_closure_var
        - Src:             'quickjs.c:32635,27'
          Dst:             get_closure_var
        - Src:             'quickjs.c:32643,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32644,17'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:32645,17'
          Dst:             var_object_test
        - Src:             'quickjs.c:32650,16'
          Dst:             add_closure_var
        - Src:             'quickjs.c:32655,19'
          Dst:             get_closure_var
        - Src:             'quickjs.c:32667,37'
          Dst:             can_opt_put_global_ref_value
        - Src:             'quickjs.c:32668,28'
          Dst:             optimize_scope_make_ref
        - Src:             'quickjs.c:32672,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32673,34'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:32673,17'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:32679,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32680,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32681,13'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:32686,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32687,13'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:32690,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32691,13'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:32694,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32695,30'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:32695,13'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:32701,13'
          Dst:             capture_var
        - Src:             'quickjs.c:32702,19'
          Dst:             get_closure_var
        - Src:             'quickjs.c:32706,13'
          Dst:             capture_var
        - Src:             'quickjs.c:32707,19'
          Dst:             get_closure_var
        - Src:             'quickjs.c:32718,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32719,34'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:32719,17'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:32720,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32727,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32728,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32729,21'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:32730,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32731,38'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:32731,21'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:32732,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32733,38'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:32733,21'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:32736,21'
          Dst:             can_opt_put_ref_value
        - Src:             'quickjs.c:32742,32'
          Dst:             optimize_scope_make_ref
        - Src:             'quickjs.c:32748,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32749,38'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:32749,21'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:32750,21'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:32756,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32763,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:0,0'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32792,17'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:32795,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32804,9'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:32805,9'
          Dst:             dbuf_put_u32
    - functionName:    find_var
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23436
      functionLinenumberEnd: 23443
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          62
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - find_arg
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23442,12'
          Dst:             find_arg
    - functionName:    add_arguments_var
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23645
      functionLinenumberEnd: 23650
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          34
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - add_var
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23647,27'
          Dst:             add_var
    - functionName:    add_func_var
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23633
      functionLinenumberEnd: 23641
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - add_var
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23635,27'
          Dst:             add_var
    - functionName:    find_arg
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23426
      functionLinenumberEnd: 23433
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          35
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mark_eval_captured_variables
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33002
      functionLinenumberEnd: 33011
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          42
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - capture_var
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:33008,9'
          Dst:             capture_var
    - functionName:    find_closure_var
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32138
      functionLinenumberEnd: 32146
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          40
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    find_var_in_scope
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23448
      functionLinenumberEnd: 23458
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          51
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_arguments_arg
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23656
      functionLinenumberEnd: 23676
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - add_var
        - find_var_in_scope
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23659,15'
          Dst:             find_var_in_scope
        - Src:             'quickjs.c:23664,19'
          Dst:             add_var
    - functionName:    compute_stack_size
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35170
      functionLinenumberEnd: 35366
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         112
      ICount:          575
      EdgeCount:       140
      CyclomaticComplexity: 30
      functionsReached:
        - JS_ThrowInternalError
        - get_u16
        - get_u32
        - js_free
        - js_malloc
        - ss_check
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs.c:35241,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:35179,26'
          Dst:             js_malloc
        - Src:             'quickjs.c:35186,24'
          Dst:             js_malloc
        - Src:             'quickjs.c:35196,9'
          Dst:             ss_check
        - Src:             'quickjs.c:35205,13'
          Dst:             JS_ThrowInternalError
        - Src:             'quickjs.c:35214,13'
          Dst:             JS_ThrowInternalError
        - Src:             'quickjs.c:35220,22'
          Dst:             get_u16
        - Src:             'quickjs.c:35230,13'
          Dst:             JS_ThrowInternalError
        - Src:             'quickjs.c:35237,17'
          Dst:             JS_ThrowInternalError
        - Src:             'quickjs.c:35252,20'
          Dst:             get_u32
        - Src:             'quickjs.c:35257,29'
          Dst:             get_u16
        - Src:             'quickjs.c:35267,17'
          Dst:             ss_check
        - Src:             'quickjs.c:35273,20'
          Dst:             get_u32
        - Src:             'quickjs.c:35274,17'
          Dst:             ss_check
        - Src:             'quickjs.c:35278,20'
          Dst:             get_u32
        - Src:             'quickjs.c:35279,17'
          Dst:             ss_check
        - Src:             'quickjs.c:35284,20'
          Dst:             get_u32
        - Src:             'quickjs.c:35285,17'
          Dst:             ss_check
        - Src:             'quickjs.c:35290,20'
          Dst:             get_u32
        - Src:             'quickjs.c:35291,17'
          Dst:             ss_check
        - Src:             'quickjs.c:35295,20'
          Dst:             get_u32
        - Src:             'quickjs.c:35296,17'
          Dst:             ss_check
        - Src:             'quickjs.c:35300,20'
          Dst:             get_u32
        - Src:             'quickjs.c:35301,17'
          Dst:             ss_check
        - Src:             'quickjs.c:35339,17'
          Dst:             JS_ThrowInternalError
        - Src:             'quickjs.c:35351,13'
          Dst:             ss_check
        - Src:             'quickjs.c:35355,5'
          Dst:             js_free
        - Src:             'quickjs.c:35356,5'
          Dst:             js_free
        - Src:             'quickjs.c:35357,5'
          Dst:             js_free
        - Src:             'quickjs.c:35361,5'
          Dst:             js_free
        - Src:             'quickjs.c:35362,5'
          Dst:             js_free
        - Src:             'quickjs.c:35363,5'
          Dst:             js_free
    - functionName:    resolve_labels
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34211
      functionLinenumberEnd: 35111
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         575
      ICount:          2999
      EdgeCount:       754
      CyclomaticComplexity: 181
      functionsReached:
        - JS_FreeAtom
        - JS_ThrowOutOfMemory
        - __assert_fail
        - add_pc2line_info
        - add_reloc
        - capture_var
        - code_has_label
        - code_match
        - compute_pc2line_info
        - dbuf_error
        - dbuf_free
        - dbuf_put
        - dbuf_put_u16
        - dbuf_put_u32
        - dbuf_putc
        - find_jump_target
        - get_i32
        - get_u16
        - get_u32
        - js_dbuf_bytecode_init
        - js_free
        - js_mallocz
        - push_short_int
        - put_short_code
        - put_u16
        - put_u32
        - put_u8
        - skip_dead_code
        - update_label
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs.c:34317,9'
          Branch Sides:    []
        - Branch String:   'quickjs.c:34336,21'
          Branch Sides:    []
        - Branch String:   'quickjs.c:34967,21'
          Branch Sides:    []
        - Branch String:   'quickjs.c:35023,13'
          Branch Sides:    []
        - Branch String:   'quickjs.c:35075,17'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:34229,5'
          Dst:             js_dbuf_bytecode_init
        - Src:             'quickjs.c:34233,25'
          Dst:             js_mallocz
        - Src:             'quickjs.c:34240,32'
          Dst:             js_mallocz
        - Src:             'quickjs.c:34249,9'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34250,9'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34251,9'
          Dst:             put_short_code
        - Src:             'quickjs.c:34255,9'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34256,9'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34257,9'
          Dst:             put_short_code
        - Src:             'quickjs.c:34261,9'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34262,9'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34263,9'
          Dst:             put_short_code
        - Src:             'quickjs.c:34269,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34270,13'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:34272,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34273,13'
          Dst:             put_short_code
        - Src:             'quickjs.c:34279,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34280,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34282,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34283,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34288,17'
          Dst:             capture_var
        - Src:             'quickjs.c:34291,13'
          Dst:             put_short_code
        - Src:             'quickjs.c:34292,9'
          Dst:             put_short_code
        - Src:             'quickjs.c:34296,9'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34297,9'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34298,9'
          Dst:             put_short_code
        - Src:             'quickjs.c:34302,9'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34303,9'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34304,9'
          Dst:             put_short_code
        - Src:             'quickjs.c:34307,9'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34308,9'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34309,9'
          Dst:             put_short_code
        - Src:             'quickjs.c:34322,24'
          Dst:             get_u32
        - Src:             'quickjs.c:34327,25'
          Dst:             get_u32
        - Src:             'quickjs.c:34328,17'
          Dst:             __assert_fail
        - Src:             'quickjs.c:34330,17'
          Dst:             __assert_fail
        - Src:             'quickjs.c:34338,25'
          Dst:             put_u32
        - Src:             'quickjs.c:34341,25'
          Dst:             __assert_fail
        - Src:             'quickjs.c:34342,25'
          Dst:             put_u16
        - Src:             'quickjs.c:34345,25'
          Dst:             __assert_fail
        - Src:             'quickjs.c:34346,25'
          Dst:             put_u8
        - Src:             'quickjs.c:34349,21'
          Dst:             js_free
        - Src:             'quickjs.c:34360,24'
          Dst:             get_u16
        - Src:             'quickjs.c:34361,21'
          Dst:             code_match
        - Src:             'quickjs.c:34363,21'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34364,21'
          Dst:             put_short_code
        - Src:             'quickjs.c:34365,32'
          Dst:             skip_dead_code
        - Src:             'quickjs.c:34368,17'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34369,17'
          Dst:             put_short_code
        - Src:             'quickjs.c:34379,24'
          Dst:             skip_dead_code
        - Src:             'quickjs.c:34383,21'
          Dst:             get_u32
        - Src:             'quickjs.c:34388,25'
          Dst:             find_jump_target
        - Src:             'quickjs.c:34389,21'
          Dst:             code_has_label
        - Src:             'quickjs.c:34391,21'
          Dst:             update_label
        - Src:             'quickjs.c:34398,21'
          Dst:             update_label
        - Src:             'quickjs.c:34399,21'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34400,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34401,32'
          Dst:             skip_dead_code
        - Src:             'quickjs.c:34414,21'
          Dst:             get_u32
        - Src:             'quickjs.c:34426,21'
          Dst:             get_u32
        - Src:             'quickjs.c:34431,21'
          Dst:             get_u32
        - Src:             'quickjs.c:34433,25'
          Dst:             find_jump_target
        - Src:             'quickjs.c:34435,21'
          Dst:             code_has_label
        - Src:             'quickjs.c:34436,21'
          Dst:             update_label
        - Src:             'quickjs.c:34437,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34441,21'
          Dst:             code_match
        - Src:             'quickjs.c:34444,25'
          Dst:             code_has_label
        - Src:             'quickjs.c:34447,25'
          Dst:             update_label
        - Src:             'quickjs.c:34454,13'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34456,28'
          Dst:             skip_dead_code
        - Src:             'quickjs.c:34458,13'
          Dst:             __assert_fail
        - Src:             'quickjs.c:34472,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34473,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34474,26'
          Dst:             add_reloc
        - Src:             'quickjs.c:34481,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34482,21'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:34483,26'
          Dst:             add_reloc
        - Src:             'quickjs.c:34492,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34493,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34499,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34500,21'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:34505,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34506,13'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:34509,22'
          Dst:             add_reloc
        - Src:             'quickjs.c:34522,24'
          Dst:             get_u32
        - Src:             'quickjs.c:34523,25'
          Dst:             get_u32
        - Src:             'quickjs.c:34526,29'
          Dst:             find_jump_target
        - Src:             'quickjs.c:34528,17'
          Dst:             __assert_fail
        - Src:             'quickjs.c:34530,17'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34538,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34539,17'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:34540,17'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:34543,26'
          Dst:             add_reloc
        - Src:             'quickjs.c:34546,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34553,21'
          Dst:             code_match
        - Src:             'quickjs.c:34564,21'
          Dst:             code_match
        - Src:             'quickjs.c:34566,21'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34567,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34572,21'
          Dst:             code_match
        - Src:             'quickjs.c:34574,21'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34575,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34588,21'
          Dst:             code_match
        - Src:             'quickjs.c:34604,25'
          Dst:             update_label
        - Src:             'quickjs.c:34614,23'
          Dst:             get_i32
        - Src:             'quickjs.c:34616,21'
          Dst:             code_match
        - Src:             'quickjs.c:34618,25'
          Dst:             code_match
        - Src:             'quickjs.c:34621,25'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34622,25'
          Dst:             push_short_int
        - Src:             'quickjs.c:34628,21'
          Dst:             code_match
        - Src:             'quickjs.c:34634,21'
          Dst:             code_match
        - Src:             'quickjs.c:34638,17'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34639,17'
          Dst:             push_short_int
        - Src:             'quickjs.c:34647,23'
          Dst:             get_i32
        - Src:             'quickjs.c:34649,21'
          Dst:             code_match
        - Src:             'quickjs.c:34651,25'
          Dst:             code_match
        - Src:             'quickjs.c:34654,25'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34655,25'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34656,25'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:34668,27'
          Dst:             get_u32
        - Src:             'quickjs.c:34670,21'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34671,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34672,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34680,31'
          Dst:             get_u32
        - Src:             'quickjs.c:34682,21'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:34683,21'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34684,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34692,31'
          Dst:             get_u32
        - Src:             'quickjs.c:34694,21'
          Dst:             code_match
        - Src:             'quickjs.c:34695,21'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:34702,21'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:34703,21'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34704,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34714,21'
          Dst:             code_match
        - Src:             'quickjs.c:34715,21'
          Dst:             code_match
        - Src:             'quickjs.c:34716,21'
          Dst:             code_match
        - Src:             'quickjs.c:34725,21'
          Dst:             code_match
        - Src:             'quickjs.c:34731,21'
          Dst:             code_match
        - Src:             'quickjs.c:34733,21'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34734,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34739,21'
          Dst:             code_match
        - Src:             'quickjs.c:34745,21'
          Dst:             code_match
        - Src:             'quickjs.c:34747,21'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34748,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34753,21'
          Dst:             code_match
        - Src:             'quickjs.c:34755,21'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34756,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34771,21'
          Dst:             code_match
        - Src:             'quickjs.c:34773,21'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34774,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34775,21'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:34787,21'
          Dst:             code_match
        - Src:             'quickjs.c:34791,25'
          Dst:             code_match
        - Src:             'quickjs.c:34795,29'
          Dst:             code_match
        - Src:             'quickjs.c:34801,21'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34802,21'
          Dst:             put_short_code
        - Src:             'quickjs.c:34818,23'
          Dst:             get_u16
        - Src:             'quickjs.c:34821,21'
          Dst:             code_match
        - Src:             'quickjs.c:34822,21'
          Dst:             code_match
        - Src:             'quickjs.c:34824,21'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34825,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34826,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34833,21'
          Dst:             code_match
        - Src:             'quickjs.c:34835,21'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34838,25'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:34839,25'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34843,25'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34844,25'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:34846,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34847,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34854,21'
          Dst:             code_match
        - Src:             'quickjs.c:34856,21'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34857,21'
          Dst:             push_short_int
        - Src:             'quickjs.c:34858,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34859,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34868,21'
          Dst:             code_match
        - Src:             'quickjs.c:34870,21'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34871,21'
          Dst:             put_short_code
        - Src:             'quickjs.c:34872,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34873,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34877,17'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34878,17'
          Dst:             put_short_code
        - Src:             'quickjs.c:34887,23'
          Dst:             get_u16
        - Src:             'quickjs.c:34888,17'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34889,17'
          Dst:             put_short_code
        - Src:             'quickjs.c:34901,23'
          Dst:             get_u16
        - Src:             'quickjs.c:34902,21'
          Dst:             code_match
        - Src:             'quickjs.c:34904,21'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34905,21'
          Dst:             put_short_code
        - Src:             'quickjs.c:34909,17'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34910,17'
          Dst:             put_short_code
        - Src:             'quickjs.c:34924,21'
          Dst:             code_match
        - Src:             'quickjs.c:34929,25'
          Dst:             code_match
        - Src:             'quickjs.c:34934,21'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34935,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34936,21'
          Dst:             put_short_code
        - Src:             'quickjs.c:34939,21'
          Dst:             code_match
        - Src:             'quickjs.c:34941,21'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34942,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34943,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34944,21'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:34948,21'
          Dst:             code_match
        - Src:             'quickjs.c:34950,21'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34951,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34952,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34963,21'
          Dst:             code_match
        - Src:             'quickjs.c:34978,29'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34979,29'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34980,29'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:34984,53'
          Dst:             code_match
        - Src:             'quickjs.c:34987,29'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:34988,29'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:34989,29'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:35003,13'
          Dst:             add_pc2line_info
        - Src:             'quickjs.c:35004,13'
          Dst:             dbuf_put
        - Src:             'quickjs.c:35011,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:35077,21'
          Dst:             put_u8
        - Src:             'quickjs.c:35080,21'
          Dst:             put_u16
        - Src:             'quickjs.c:35083,21'
          Dst:             put_u32
        - Src:             'quickjs.c:35089,5'
          Dst:             js_free
        - Src:             'quickjs.c:35092,5'
          Dst:             js_free
        - Src:             'quickjs.c:35095,5'
          Dst:             compute_pc2line_info
        - Src:             'quickjs.c:35096,5'
          Dst:             js_free
        - Src:             'quickjs.c:35099,5'
          Dst:             dbuf_free
        - Src:             'quickjs.c:35102,9'
          Dst:             dbuf_error
        - Src:             'quickjs.c:35103,9'
          Dst:             JS_ThrowOutOfMemory
        - Src:             'quickjs.c:35109,5'
          Dst:             dbuf_free
    - functionName:    js_dbuf_bytecode_init
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1537
      functionLinenumberEnd: 1539
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_init2
        - js_realloc_bytecode_rt
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1538,5'
          Dst:             dbuf_init2
        - Src:             'quickjs.c:1538,5'
          Dst:             js_realloc_bytecode_rt
    - functionName:    js_realloc_bytecode_rt
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1525
      functionLinenumberEnd: 1534
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    resolve_variables
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33602
      functionLinenumberEnd: 33958
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         171
      ICount:          866
      EdgeCount:       218
      CyclomaticComplexity: 49
      functionsReached:
        - JS_DupAtom
        - JS_FreeAtom
        - JS_ThrowOutOfMemory
        - __assert_fail
        - code_match
        - dbuf_error
        - dbuf_free
        - dbuf_put
        - dbuf_put_u16
        - dbuf_put_u32
        - dbuf_putc
        - get_label_pos
        - get_u16
        - get_u32
        - instantiate_hoisted_definitions
        - js_dbuf_bytecode_init
        - mark_eval_captured_variables
        - resolve_scope_private_field
        - resolve_scope_var
        - skip_dead_code
        - update_label
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs.c:33655,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:33612,5'
          Dst:             js_dbuf_bytecode_init
        - Src:             'quickjs.c:33637,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:33638,43'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:33638,21'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:33639,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:33657,24'
          Dst:             get_u32
        - Src:             'quickjs.c:33663,33'
          Dst:             get_u16
        - Src:             'quickjs.c:33664,25'
          Dst:             get_u16
        - Src:             'quickjs.c:33665,17'
          Dst:             mark_eval_captured_variables
        - Src:             'quickjs.c:33666,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:33667,17'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:33668,17'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:33672,21'
          Dst:             get_u16
        - Src:             'quickjs.c:33673,13'
          Dst:             mark_eval_captured_variables
        - Src:             'quickjs.c:33674,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:33675,13'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:33684,24'
          Dst:             get_u32
        - Src:             'quickjs.c:33685,21'
          Dst:             get_u16
        - Src:             'quickjs.c:33686,24'
          Dst:             resolve_scope_var
        - Src:             'quickjs.c:33688,13'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:33694,28'
          Dst:             get_u32
        - Src:             'quickjs.c:33695,25'
          Dst:             get_u32
        - Src:             'quickjs.c:33696,25'
          Dst:             get_u16
        - Src:             'quickjs.c:33699,28'
          Dst:             resolve_scope_var
        - Src:             'quickjs.c:33701,17'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:33710,28'
          Dst:             get_u32
        - Src:             'quickjs.c:33711,25'
          Dst:             get_u16
        - Src:             'quickjs.c:33712,23'
          Dst:             resolve_scope_private_field
        - Src:             'quickjs.c:33715,17'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:33725,25'
          Dst:             get_u32
        - Src:             'quickjs.c:33726,17'
          Dst:             __assert_fail
        - Src:             'quickjs.c:33728,21'
          Dst:             code_match
        - Src:             'quickjs.c:33760,21'
          Dst:             code_match
        - Src:             'quickjs.c:33761,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:33766,25'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:33767,25'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:33787,17'
          Dst:             dbuf_put
        - Src:             'quickjs.c:33788,23'
          Dst:             skip_dead_code
        - Src:             'quickjs.c:33793,21'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:33794,21'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:33805,25'
          Dst:             get_u32
        - Src:             'quickjs.c:33806,17'
          Dst:             __assert_fail
        - Src:             'quickjs.c:33814,40'
          Dst:             get_u16
        - Src:             'quickjs.c:33817,21'
          Dst:             instantiate_hoisted_definitions
        - Src:             'quickjs.c:33827,33'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:33828,33'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:0,0'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:0,0'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:33848,40'
          Dst:             get_u16
        - Src:             'quickjs.c:33854,29'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:33855,29'
          Dst:             dbuf_put_u16
        - Src:             'quickjs.c:33868,31'
          Dst:             get_u32
        - Src:             'quickjs.c:33884,21'
          Dst:             code_match
        - Src:             'quickjs.c:33887,21'
          Dst:             __assert_fail
        - Src:             'quickjs.c:33891,52'
          Dst:             get_label_pos
        - Src:             'quickjs.c:33891,28'
          Dst:             code_match
        - Src:             'quickjs.c:33891,52'
          Dst:             get_label_pos
        - Src:             'quickjs.c:33891,28'
          Dst:             code_match
        - Src:             'quickjs.c:33894,25'
          Dst:             code_match
        - Src:             'quickjs.c:33896,25'
          Dst:             update_label
        - Src:             'quickjs.c:33897,25'
          Dst:             update_label
        - Src:             'quickjs.c:33898,25'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:33899,25'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:33904,29'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:33905,29'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:33922,31'
          Dst:             get_u32
        - Src:             'quickjs.c:33923,17'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:33924,17'
          Dst:             dbuf_put_u32
        - Src:             'quickjs.c:33928,13'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:33933,13'
          Dst:             dbuf_put
        - Src:             'quickjs.c:33939,5'
          Dst:             dbuf_free
        - Src:             'quickjs.c:33941,9'
          Dst:             dbuf_error
        - Src:             'quickjs.c:33942,9'
          Dst:             JS_ThrowOutOfMemory
        - Src:             'quickjs.c:33953,9'
          Dst:             dbuf_put
        - Src:             'quickjs.c:33955,5'
          Dst:             dbuf_free
    - functionName:    add_global_variables
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35369
      functionLinenumberEnd: 35433
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         46
      ICount:          217
      EdgeCount:       63
      CyclomaticComplexity: 19
      functionsReached:
        - __JS_ThrowSyntaxErrorAtom
        - add_closure_var
        - find_closure_var
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:35411,17'
          Dst:             add_closure_var
        - Src:             'quickjs.c:35422,23'
          Dst:             find_closure_var
        - Src:             'quickjs.c:35424,21'
          Dst:             __JS_ThrowSyntaxErrorAtom
    - functionName:    add_eval_variables
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33025
      functionLinenumberEnd: 33179
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         155
      ICount:          771
      EdgeCount:       213
      CyclomaticComplexity: 60
      functionsReached:
        - __assert_fail
        - add_arguments_arg
        - add_arguments_var
        - add_func_var
        - add_var
        - add_var_this
        - capture_var
        - get_closure_var
        - is_var_in_arg_scope
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:33034,29'
          Dst:             add_var
        - Src:             'quickjs.c:33038,37'
          Dst:             add_var
        - Src:             'quickjs.c:33046,31'
          Dst:             add_var_this
        - Src:             'quickjs.c:33048,37'
          Dst:             add_var
        - Src:             'quickjs.c:33050,43'
          Dst:             add_var
        - Src:             'quickjs.c:33052,38'
          Dst:             add_var
        - Src:             'quickjs.c:33056,9'
          Dst:             add_arguments_var
        - Src:             'quickjs.c:33061,13'
          Dst:             add_arguments_arg
        - Src:             'quickjs.c:33064,9'
          Dst:             add_func_var
        - Src:             'quickjs.c:33068,9'
          Dst:             capture_var
        - Src:             'quickjs.c:33076,13'
          Dst:             capture_var
        - Src:             'quickjs.c:33084,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:33096,36'
          Dst:             add_var_this
        - Src:             'quickjs.c:33098,42'
          Dst:             add_var
        - Src:             'quickjs.c:33100,48'
          Dst:             add_var
        - Src:             'quickjs.c:33102,43'
          Dst:             add_var
        - Src:             'quickjs.c:33107,13'
          Dst:             add_arguments_var
        - Src:             'quickjs.c:33112,13'
          Dst:             add_func_var
        - Src:             'quickjs.c:33118,13'
          Dst:             capture_var
        - Src:             'quickjs.c:33119,13'
          Dst:             get_closure_var
        - Src:             'quickjs.c:33130,21'
          Dst:             capture_var
        - Src:             'quickjs.c:33131,21'
          Dst:             get_closure_var
        - Src:             'quickjs.c:33142,21'
          Dst:             capture_var
        - Src:             'quickjs.c:33143,21'
          Dst:             get_closure_var
        - Src:             'quickjs.c:33152,45'
          Dst:             is_var_in_arg_scope
        - Src:             'quickjs.c:33153,21'
          Dst:             capture_var
        - Src:             'quickjs.c:33154,21'
          Dst:             get_closure_var
        - Src:             'quickjs.c:33171,21'
          Dst:             get_closure_var
    - functionName:    is_var_in_arg_scope
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33015
      functionLinenumberEnd: 33021
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          47
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_unsupported_keyword
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25631
      functionLinenumberEnd: 25635
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_AtomGetStr
        - js_parse_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:25634,27'
          Dst:             JS_AtomGetStr
        - Src:             'quickjs.c:25633,12'
          Dst:             js_parse_error
    - functionName:    js_parse_error
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21783
      functionLinenumberEnd: 21791
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_parse_error_v
      functionUses:    118
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:21788,11'
          Dst:             js_parse_error_v
    - functionName:    js_parse_error_v
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21761
      functionLinenumberEnd: 21769
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_ThrowError2
        - build_backtrace
        - get_line_col
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:21764,16'
          Dst:             get_line_col
        - Src:             'quickjs.c:21765,5'
          Dst:             JS_ThrowError2
        - Src:             'quickjs.c:21766,5'
          Dst:             build_backtrace
    - functionName:    emit_break
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27767
      functionLinenumberEnd: 27813
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         46
      ICount:          197
      EdgeCount:       62
      CyclomaticComplexity: 18
      functionsReached:
        - close_scopes
        - emit_goto
        - emit_op
        - js_parse_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:27774,9'
          Dst:             close_scopes
        - Src:             'quickjs.c:27780,13'
          Dst:             emit_goto
        - Src:             'quickjs.c:27787,13'
          Dst:             emit_goto
        - Src:             'quickjs.c:27792,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27796,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27799,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27800,13'
          Dst:             emit_goto
        - Src:             'quickjs.c:27801,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27807,20'
          Dst:             js_parse_error
        - Src:             'quickjs.c:27809,20'
          Dst:             js_parse_error
        - Src:             'quickjs.c:27811,16'
          Dst:             js_parse_error
    - functionName:    close_scopes
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23589
      functionLinenumberEnd: 23595
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          40
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - emit_op
        - emit_u16
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23591,9'
          Dst:             emit_op
        - Src:             'quickjs.c:23592,9'
          Dst:             emit_u16
    - functionName:    emit_goto
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23369
      functionLinenumberEnd: 23382
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          53
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - emit_op
        - emit_u32
        - js_is_live_code
        - new_label
      functionUses:    65
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23370,9'
          Dst:             js_is_live_code
        - Src:             'quickjs.c:23372,21'
          Dst:             new_label
        - Src:             'quickjs.c:23376,9'
          Dst:             emit_op
        - Src:             'quickjs.c:23377,9'
          Dst:             emit_u32
    - functionName:    emit_op
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23289
      functionLinenumberEnd: 23295
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_putc
      functionUses:    410
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23294,5'
          Dst:             dbuf_putc
    - functionName:    js_is_live_code
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23240
      functionLinenumberEnd: 23259
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          67
      EdgeCount:       31
      CyclomaticComplexity: 17
      functionsReached:
        - get_prev_opcode
      functionUses:    4
      BranchProfiles:
        - Branch String:   'quickjs.c:23241,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:23241,13'
          Dst:             get_prev_opcode
    - functionName:    new_label
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23337
      functionLinenumberEnd: 23343
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dbuf_set_error
        - new_label_fd
      functionUses:    31
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23339,13'
          Dst:             new_label_fd
        - Src:             'quickjs.c:23341,9'
          Dst:             dbuf_set_error
    - functionName:    emit_u32
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23272
      functionLinenumberEnd: 23274
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_put_u32
      functionUses:    28
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23273,5'
          Dst:             dbuf_put_u32
    - functionName:    get_prev_opcode
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23233
      functionLinenumberEnd: 23238
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          39
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - dbuf_error
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23234,36'
          Dst:             dbuf_error
    - functionName:    emit_u16
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23267
      functionLinenumberEnd: 23269
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_put_u16
      functionUses:    91
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23268,5'
          Dst:             dbuf_put_u16
    - functionName:    is_let
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28041
      functionLinenumberEnd: 28081
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         32
      ICount:          127
      EdgeCount:       44
      CyclomaticComplexity: 14
      functionsReached:
        - has_lf_in_range
        - js_parse_get_pos
        - js_parse_seek_token
        - next_token
        - token_is_pseudo_keyword
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:28045,9'
          Dst:             token_is_pseudo_keyword
        - Src:             'quickjs.c:28047,9'
          Dst:             js_parse_get_pos
        - Src:             'quickjs.c:28050,17'
          Dst:             next_token
        - Src:             'quickjs.c:28068,22'
          Dst:             has_lf_in_range
        - Src:             'quickjs.c:28077,13'
          Dst:             js_parse_seek_token
    - functionName:    token_is_pseudo_keyword
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22022
      functionLinenumberEnd: 22024
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    24
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_parse_get_pos
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24170
      functionLinenumberEnd: 24173
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    next_token
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22254
      functionLinenumberEnd: 22693
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         298
      ICount:          1358
      EdgeCount:       384
      CyclomaticComplexity: 88
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_VALUE_IS_NAN
        - free_token
        - is_digit
        - js_atof
        - js_check_stack_overflow
        - js_parse_error
        - js_parse_string
        - js_parse_template_part
        - lre_is_space
        - lre_js_is_ident_first
        - lre_js_is_ident_next
        - lre_parse_escape
        - parse_ident
        - unicode_from_utf8
        - update_token_ident
      functionUses:    162
      BranchProfiles:
        - Branch String:   'quickjs.c:22271,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:22260,9'
          Dst:             js_check_stack_overflow
        - Src:             'quickjs.c:22261,16'
          Dst:             js_parse_error
        - Src:             'quickjs.c:22264,5'
          Dst:             free_token
        - Src:             'quickjs.c:22280,13'
          Dst:             js_parse_template_part
        - Src:             'quickjs.c:22286,13'
          Dst:             js_parse_string
        - Src:             'quickjs.c:22311,21'
          Dst:             js_parse_error
        - Src:             'quickjs.c:22322,25'
          Dst:             unicode_from_utf8
        - Src:             'quickjs.c:22343,25'
          Dst:             unicode_from_utf8
        - Src:             'quickjs.c:22366,22'
          Dst:             lre_parse_escape
        - Src:             'quickjs.c:22367,28'
          Dst:             lre_js_is_ident_first
        - Src:             'quickjs.c:22397,16'
          Dst:             parse_ident
        - Src:             'quickjs.c:22404,9'
          Dst:             update_token_ident
        - Src:             'quickjs.c:22414,21'
          Dst:             lre_parse_escape
        - Src:             'quickjs.c:22416,21'
          Dst:             unicode_from_utf8
        - Src:             'quickjs.c:22418,18'
          Dst:             lre_js_is_ident_first
        - Src:             'quickjs.c:22419,17'
          Dst:             js_parse_error
        - Src:             'quickjs.c:22424,20'
          Dst:             parse_ident
        - Src:             'quickjs.c:22445,13'
          Dst:             is_digit
        - Src:             'quickjs.c:22446,13'
          Dst:             js_parse_error
        - Src:             'quickjs.c:22461,19'
          Dst:             js_atof
        - Src:             'quickjs.c:22463,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:22466,17'
          Dst:             JS_VALUE_IS_NAN
        - Src:             'quickjs.c:22467,38'
          Dst:             unicode_from_utf8
        - Src:             'quickjs.c:22467,17'
          Dst:             lre_js_is_ident_next
        - Src:             'quickjs.c:22468,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:22469,17'
          Dst:             js_parse_error
        - Src:             'quickjs.c:22661,17'
          Dst:             unicode_from_utf8
        - Src:             'quickjs.c:22669,21'
          Dst:             lre_is_space
        - Src:             'quickjs.c:22671,28'
          Dst:             lre_js_is_ident_first
        - Src:             'quickjs.c:22675,21'
          Dst:             js_parse_error
    - functionName:    has_lf_in_range
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24211
      functionLinenumberEnd: 24218
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - memchr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:24218,13'
          Dst:             memchr
    - functionName:    js_parse_seek_token
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24177
      functionLinenumberEnd: 24180
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - next_token
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:24180,12'
          Dst:             next_token
    - functionName:    free_token
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21615
      functionLinenumberEnd: 21639
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          91
      EdgeCount:       18
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeAtom
        - JS_FreeValue
      functionUses:    6
      BranchProfiles:
        - Branch String:   'quickjs.c:21616,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:21618,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:21622,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:21625,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:21626,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:21630,9'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:21635,13'
          Dst:             JS_FreeAtom
    - functionName:    js_parse_template_part
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21823
      functionLinenumberEnd: 21883
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         38
      ICount:          176
      EdgeCount:       52
      CyclomaticComplexity: 16
      functionsReached:
        - JS_IsException
        - js_parse_error
        - js_parse_error_pos
        - string_buffer_end
        - string_buffer_free
        - string_buffer_init
        - string_buffer_putc
        - string_buffer_putc8
        - unicode_from_utf8
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:21829,9'
          Dst:             string_buffer_init
        - Src:             'quickjs.c:21845,17'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:21859,17'
          Dst:             unicode_from_utf8
        - Src:             'quickjs.c:21861,17'
          Dst:             js_parse_error_pos
        - Src:             'quickjs.c:21866,13'
          Dst:             string_buffer_putc
        - Src:             'quickjs.c:21869,11'
          Dst:             string_buffer_end
        - Src:             'quickjs.c:21870,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:21879,5'
          Dst:             js_parse_error
        - Src:             'quickjs.c:21881,5'
          Dst:             string_buffer_free
    - functionName:    js_parse_string
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21888
      functionLinenumberEnd: 22020
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         105
      ICount:          438
      EdgeCount:       143
      CyclomaticComplexity: 40
      functionsReached:
        - JS_IsException
        - js_parse_error
        - js_parse_error_pos
        - lre_parse_escape
        - string_buffer_end
        - string_buffer_free
        - string_buffer_init
        - string_buffer_putc
        - unicode_from_utf8
      functionUses:    3
      BranchProfiles:
        - Branch String:   'quickjs.c:21926,13'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:21896,9'
          Dst:             string_buffer_init
        - Src:             'quickjs.c:21960,33'
          Dst:             js_parse_error_pos
        - Src:             'quickjs.c:21966,25'
          Dst:             unicode_from_utf8
        - Src:             'quickjs.c:21976,27'
          Dst:             lre_parse_escape
        - Src:             'quickjs.c:21980,29'
          Dst:             js_parse_error_pos
        - Src:             'quickjs.c:21993,17'
          Dst:             unicode_from_utf8
        - Src:             'quickjs.c:21998,13'
          Dst:             string_buffer_putc
        - Src:             'quickjs.c:22001,11'
          Dst:             string_buffer_end
        - Src:             'quickjs.c:22002,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:22012,9'
          Dst:             js_parse_error
        - Src:             'quickjs.c:22016,9'
          Dst:             js_parse_error
        - Src:             'quickjs.c:22018,5'
          Dst:             string_buffer_free
    - functionName:    lre_js_is_ident_first
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          26
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - lre_is_id_start
        - lre_is_id_start_byte
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './libunicode.h:171,16'
          Dst:             lre_is_id_start_byte
        - Src:             './libunicode.h:174,16'
          Dst:             lre_is_id_start
    - functionName:    parse_ident
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22207
      functionLinenumberEnd: 22250
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          153
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - JS_NewAtomLen
        - ident_realloc
        - js_free
        - lre_js_is_ident_next
        - lre_parse_escape
        - unicode_from_utf8
        - unicode_to_utf8
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:22225,26'
          Dst:             unicode_to_utf8
        - Src:             'quickjs.c:22229,17'
          Dst:             lre_parse_escape
        - Src:             'quickjs.c:22232,17'
          Dst:             unicode_from_utf8
        - Src:             'quickjs.c:22234,14'
          Dst:             lre_js_is_ident_next
        - Src:             'quickjs.c:22238,17'
          Dst:             ident_realloc
        - Src:             'quickjs.c:22244,12'
          Dst:             JS_NewAtomLen
        - Src:             'quickjs.c:22247,9'
          Dst:             js_free
    - functionName:    update_token_ident
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22164
      functionLinenumberEnd: 22189
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         42
      ICount:          186
      EdgeCount:       60
      CyclomaticComplexity: 20
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lre_js_is_ident_next
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          41
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - lre_is_id_continue
        - lre_is_id_continue_byte
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './libunicode.h:183,16'
          Dst:             lre_is_id_continue_byte
        - Src:             './libunicode.h:189,16'
          Dst:             lre_is_id_continue
    - functionName:    lre_is_id_continue_byte
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ident_realloc
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22137
      functionLinenumberEnd: 22160
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          57
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - js_malloc
        - js_realloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:22148,19'
          Dst:             js_malloc
        - Src:             'quickjs.c:22153,19'
          Dst:             js_realloc
    - functionName:    lre_is_id_start_byte
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 145
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_parse_error_pos
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21772
      functionLinenumberEnd: 21780
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_parse_error_v
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:21777,11'
          Dst:             js_parse_error_v
    - functionName:    js_parse_for_in_of
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28088
      functionLinenumberEnd: 28310
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         140
      ICount:          666
      EdgeCount:       193
      CyclomaticComplexity: 55
      functionsReached:
        - JS_DupAtom
        - JS_FreeAtom
        - close_scopes
        - dbuf_claim
        - dbuf_put
        - emit_atom
        - emit_goto
        - emit_label
        - emit_op
        - emit_u16
        - emit_u8
        - get_lvalue
        - is_let
        - js_define_var
        - js_parse_assign_expr
        - js_parse_assign_expr2
        - js_parse_destructuring_element
        - js_parse_error
        - js_parse_expect
        - js_parse_expr
        - js_parse_left_hand_side_expr
        - js_parse_skip_parens_token
        - js_parse_statement
        - new_label
        - next_token
        - peek_token
        - pop_break_entry
        - pop_scope
        - push_break_entry
        - push_scope
        - put_lvalue
        - token_is_pseudo_keyword
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs.c:28124,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:28102,18'
          Dst:             new_label
        - Src:             'quickjs.c:28103,18'
          Dst:             new_label
        - Src:             'quickjs.c:28104,19'
          Dst:             new_label
        - Src:             'quickjs.c:28105,18'
          Dst:             new_label
        - Src:             'quickjs.c:28110,5'
          Dst:             push_scope
        - Src:             'quickjs.c:28114,5'
          Dst:             push_break_entry
        - Src:             'quickjs.c:28118,18'
          Dst:             emit_goto
        - Src:             'quickjs.c:28121,5'
          Dst:             emit_label
        - Src:             'quickjs.c:28124,13'
          Dst:             is_let
        - Src:             'quickjs.c:28134,13'
          Dst:             next_token
        - Src:             'quickjs.c:28139,21'
          Dst:             js_parse_destructuring_element
        - Src:             'quickjs.c:28143,24'
          Dst:             js_parse_error
        - Src:             'quickjs.c:28147,24'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:28148,17'
          Dst:             next_token
        - Src:             'quickjs.c:28149,17'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:28152,17'
          Dst:             js_define_var
        - Src:             'quickjs.c:28153,17'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:28156,13'
          Dst:             emit_op
        - Src:             'quickjs.c:28158,13'
          Dst:             emit_atom
        - Src:             'quickjs.c:28159,13'
          Dst:             emit_u16
        - Src:             'quickjs.c:28161,29'
          Dst:             token_is_pseudo_keyword
        - Src:             'quickjs.c:28162,16'
          Dst:             peek_token
        - Src:             'quickjs.c:28163,16'
          Dst:             js_parse_error
        - Src:             'quickjs.c:28167,22'
          Dst:             js_parse_skip_parens_token
        - Src:             'quickjs.c:28168,17'
          Dst:             js_parse_destructuring_element
        - Src:             'quickjs.c:28172,17'
          Dst:             js_parse_left_hand_side_expr
        - Src:             'quickjs.c:28174,17'
          Dst:             get_lvalue
        - Src:             'quickjs.c:28177,13'
          Dst:             put_lvalue
        - Src:             'quickjs.c:28182,5'
          Dst:             emit_goto
        - Src:             'quickjs.c:28185,5'
          Dst:             emit_label
        - Src:             'quickjs.c:28192,13'
          Dst:             next_token
        - Src:             'quickjs.c:28192,30'
          Dst:             js_parse_assign_expr2
        - Src:             'quickjs.c:28193,13'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:28197,13'
          Dst:             emit_op
        - Src:             'quickjs.c:28198,13'
          Dst:             emit_atom
        - Src:             'quickjs.c:28199,13'
          Dst:             emit_u16
        - Src:             'quickjs.c:28202,5'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:28204,9'
          Dst:             token_is_pseudo_keyword
        - Src:             'quickjs.c:28210,20'
          Dst:             js_parse_error
        - Src:             'quickjs.c:28215,20'
          Dst:             js_parse_error
        - Src:             'quickjs.c:28219,16'
          Dst:             js_parse_error
        - Src:             'quickjs.c:28221,9'
          Dst:             next_token
        - Src:             'quickjs.c:28221,9'
          Dst:             next_token
        - Src:             'quickjs.c:28224,13'
          Dst:             js_parse_assign_expr
        - Src:             'quickjs.c:28227,13'
          Dst:             js_parse_expr
        - Src:             'quickjs.c:28232,5'
          Dst:             close_scopes
        - Src:             'quickjs.c:28232,5'
          Dst:             close_scopes
        - Src:             'quickjs.c:0,0'
          Dst:             emit_op
        - Src:             'quickjs.c:28248,5'
          Dst:             emit_goto
        - Src:             'quickjs.c:28250,9'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:28259,9'
          Dst:             dbuf_claim
        - Src:             'quickjs.c:28260,9'
          Dst:             dbuf_put
        - Src:             'quickjs.c:28272,5'
          Dst:             emit_label
        - Src:             'quickjs.c:28273,9'
          Dst:             js_parse_statement
        - Src:             'quickjs.c:28276,5'
          Dst:             close_scopes
        - Src:             'quickjs.c:28278,5'
          Dst:             emit_label
        - Src:             'quickjs.c:28283,13'
          Dst:             emit_op
        - Src:             'quickjs.c:28285,13'
          Dst:             emit_op
        - Src:             'quickjs.c:28287,13'
          Dst:             emit_op
        - Src:             'quickjs.c:28289,13'
          Dst:             emit_op
        - Src:             'quickjs.c:28290,13'
          Dst:             emit_u8
        - Src:             'quickjs.c:28293,9'
          Dst:             emit_op
        - Src:             'quickjs.c:28296,5'
          Dst:             emit_goto
        - Src:             'quickjs.c:28298,5'
          Dst:             emit_op
        - Src:             'quickjs.c:28300,5'
          Dst:             emit_label
        - Src:             'quickjs.c:0,0'
          Dst:             emit_op
        - Src:             'quickjs.c:28307,5'
          Dst:             pop_break_entry
        - Src:             'quickjs.c:28308,5'
          Dst:             pop_scope
    - functionName:    push_scope
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23530
      functionLinenumberEnd: 23563
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          103
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - emit_op
        - emit_u16
        - js_realloc2
        - max_int
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23540,24'
          Dst:             max_int
        - Src:             'quickjs.c:23542,27'
          Dst:             js_realloc2
        - Src:             'quickjs.c:23547,27'
          Dst:             js_realloc2
        - Src:             'quickjs.c:23558,9'
          Dst:             emit_op
        - Src:             'quickjs.c:23559,9'
          Dst:             emit_u16
    - functionName:    push_break_entry
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27746
      functionLinenumberEnd: 27757
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          26
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    emit_label
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23356
      functionLinenumberEnd: 23365
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - emit_op
        - emit_u32
      functionUses:    64
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23358,9'
          Dst:             emit_op
        - Src:             'quickjs.c:23359,9'
          Dst:             emit_u32
    - functionName:    js_parse_destructuring_element
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25765
      functionLinenumberEnd: 26229
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         279
      ICount:          1266
      EdgeCount:       378
      CyclomaticComplexity: 101
      functionsReached:
        - JS_DupAtom
        - JS_FreeAtom
        - JS_ThrowInternalError
        - abort
        - add_export_entry
        - emit_atom
        - emit_goto
        - emit_label
        - emit_op
        - emit_u16
        - emit_u32
        - emit_u8
        - get_lvalue
        - js_define_var
        - js_emit_spread_code
        - js_parse_assign_expr
        - js_parse_check_duplicate_parameter
        - js_parse_destructuring_element
        - js_parse_destructuring_var
        - js_parse_error
        - js_parse_expect
        - js_parse_left_hand_side_expr
        - js_parse_property_name
        - js_parse_skip_parens_token
        - need_var_reference
        - new_label
        - next_token
        - pop_break_entry
        - push_break_entry
        - put_lvalue
        - set_object_name
      functionUses:    8
      BranchProfiles:
        - Branch String:   'quickjs.c:25944,25'
          Branch Sides:    []
        - Branch String:   'quickjs.c:25964,25'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:25774,9'
          Dst:             js_parse_skip_parens_token
        - Src:             'quickjs.c:25778,19'
          Dst:             new_label
        - Src:             'quickjs.c:25779,20'
          Dst:             new_label
        - Src:             'quickjs.c:25784,9'
          Dst:             emit_op
        - Src:             'quickjs.c:25785,9'
          Dst:             emit_op
        - Src:             'quickjs.c:25786,9'
          Dst:             emit_op
        - Src:             'quickjs.c:25787,9'
          Dst:             emit_goto
        - Src:             'quickjs.c:25788,9'
          Dst:             emit_label
        - Src:             'quickjs.c:25790,9'
          Dst:             emit_goto
        - Src:             'quickjs.c:25791,9'
          Dst:             emit_label
        - Src:             'quickjs.c:25793,9'
          Dst:             emit_op
        - Src:             'quickjs.c:25797,13'
          Dst:             next_token
        - Src:             'quickjs.c:25800,9'
          Dst:             emit_op
        - Src:             'quickjs.c:25803,13'
          Dst:             emit_op
        - Src:             'quickjs.c:25804,13'
          Dst:             emit_op
        - Src:             'quickjs.c:25810,21'
          Dst:             JS_ThrowInternalError
        - Src:             'quickjs.c:25813,21'
          Dst:             next_token
        - Src:             'quickjs.c:25816,32'
          Dst:             js_parse_destructuring_var
        - Src:             'quickjs.c:25819,25'
          Dst:             need_var_reference
        - Src:             'quickjs.c:25821,25'
          Dst:             emit_op
        - Src:             'quickjs.c:25822,25'
          Dst:             emit_atom
        - Src:             'quickjs.c:25823,25'
          Dst:             emit_u16
        - Src:             'quickjs.c:25824,25'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:25833,25'
          Dst:             js_parse_left_hand_side_expr
        - Src:             'quickjs.c:25836,25'
          Dst:             get_lvalue
        - Src:             'quickjs.c:25841,21'
          Dst:             js_parse_error
        - Src:             'quickjs.c:25844,17'
          Dst:             emit_op
        - Src:             'quickjs.c:25845,17'
          Dst:             emit_op
        - Src:             'quickjs.c:25846,17'
          Dst:             emit_u8
        - Src:             'quickjs.c:25849,25'
          Dst:             js_parse_property_name
        - Src:             'quickjs.c:25854,21'
          Dst:             next_token
        - Src:             'quickjs.c:25857,34'
          Dst:             js_parse_skip_parens_token
        - Src:             'quickjs.c:25863,29'
          Dst:             emit_op
        - Src:             'quickjs.c:25864,29'
          Dst:             emit_op
        - Src:             'quickjs.c:25865,29'
          Dst:             emit_op
        - Src:             'quickjs.c:25866,29'
          Dst:             emit_op
        - Src:             'quickjs.c:25867,29'
          Dst:             emit_op
        - Src:             'quickjs.c:25870,25'
          Dst:             emit_op
        - Src:             'quickjs.c:25875,29'
          Dst:             emit_op
        - Src:             'quickjs.c:25876,29'
          Dst:             emit_op
        - Src:             'quickjs.c:25877,29'
          Dst:             emit_op
        - Src:             'quickjs.c:25878,29'
          Dst:             emit_atom
        - Src:             'quickjs.c:25879,29'
          Dst:             emit_op
        - Src:             'quickjs.c:25882,25'
          Dst:             emit_op
        - Src:             'quickjs.c:25883,25'
          Dst:             emit_u32
        - Src:             'quickjs.c:25885,25'
          Dst:             js_parse_destructuring_element
        - Src:             'quickjs.c:25890,25'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:25895,21'
          Dst:             emit_op
        - Src:             'quickjs.c:25898,25'
          Dst:             emit_op
        - Src:             'quickjs.c:25899,25'
          Dst:             emit_op
        - Src:             'quickjs.c:25900,25'
          Dst:             emit_op
        - Src:             'quickjs.c:25908,25'
          Dst:             emit_op
        - Src:             'quickjs.c:25909,25'
          Dst:             emit_op
        - Src:             'quickjs.c:25910,25'
          Dst:             emit_op
        - Src:             'quickjs.c:25911,25'
          Dst:             emit_atom
        - Src:             'quickjs.c:0,0'
          Dst:             emit_op
        - Src:             'quickjs.c:0,0'
          Dst:             emit_op
        - Src:             'quickjs.c:25918,32'
          Dst:             js_parse_destructuring_var
        - Src:             'quickjs.c:25921,25'
          Dst:             need_var_reference
        - Src:             'quickjs.c:25923,25'
          Dst:             emit_op
        - Src:             'quickjs.c:25924,25'
          Dst:             emit_atom
        - Src:             'quickjs.c:25925,25'
          Dst:             emit_u16
        - Src:             'quickjs.c:25926,25'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:25936,25'
          Dst:             js_parse_left_hand_side_expr
        - Src:             'quickjs.c:25939,25'
          Dst:             get_lvalue
        - Src:             'quickjs.c:25957,29'
          Dst:             emit_op
        - Src:             'quickjs.c:25961,29'
          Dst:             abort
        - Src:             'quickjs.c:25980,29'
          Dst:             abort
        - Src:             'quickjs.c:0,0'
          Dst:             emit_op
        - Src:             'quickjs.c:25988,21'
          Dst:             emit_op
        - Src:             'quickjs.c:0,0'
          Dst:             emit_op
        - Src:             'quickjs.c:25993,21'
          Dst:             emit_op
        - Src:             'quickjs.c:25994,21'
          Dst:             emit_u32
        - Src:             'quickjs.c:25998,31'
          Dst:             js_parse_check_duplicate_parameter
        - Src:             'quickjs.c:26002,21'
          Dst:             js_parse_error
        - Src:             'quickjs.c:26007,21'
          Dst:             emit_op
        - Src:             'quickjs.c:26008,21'
          Dst:             emit_op
        - Src:             'quickjs.c:26009,21'
          Dst:             emit_op
        - Src:             'quickjs.c:26010,21'
          Dst:             emit_atom
        - Src:             'quickjs.c:26011,21'
          Dst:             emit_op
        - Src:             'quickjs.c:26013,29'
          Dst:             need_var_reference
        - Src:             'quickjs.c:26016,21'
          Dst:             emit_op
        - Src:             'quickjs.c:26017,21'
          Dst:             emit_op
        - Src:             'quickjs.c:26018,21'
          Dst:             emit_atom
        - Src:             'quickjs.c:26019,21'
          Dst:             emit_u16
        - Src:             'quickjs.c:26023,32'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:26030,21'
          Dst:             emit_op
        - Src:             'quickjs.c:26031,21'
          Dst:             emit_u32
        - Src:             'quickjs.c:26036,21'
          Dst:             js_define_var
        - Src:             'quickjs.c:26039,26'
          Dst:             add_export_entry
        - Src:             'quickjs.c:26047,17'
          Dst:             emit_op
        - Src:             'quickjs.c:26048,17'
          Dst:             emit_op
        - Src:             'quickjs.c:26049,17'
          Dst:             emit_op
        - Src:             'quickjs.c:26050,32'
          Dst:             emit_goto
        - Src:             'quickjs.c:26051,21'
          Dst:             next_token
        - Src:             'quickjs.c:26053,17'
          Dst:             emit_op
        - Src:             'quickjs.c:26054,21'
          Dst:             js_parse_assign_expr
        - Src:             'quickjs.c:26057,21'
          Dst:             set_object_name
        - Src:             'quickjs.c:26058,17'
          Dst:             emit_label
        - Src:             'quickjs.c:26061,13'
          Dst:             put_lvalue
        - Src:             'quickjs.c:26067,17'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:26071,9'
          Dst:             emit_op
        - Src:             'quickjs.c:26073,13'
          Dst:             emit_op
        - Src:             'quickjs.c:26075,13'
          Dst:             next_token
        - Src:             'quickjs.c:26082,13'
          Dst:             next_token
        - Src:             'quickjs.c:26086,9'
          Dst:             push_break_entry
        - Src:             'quickjs.c:26089,9'
          Dst:             emit_op
        - Src:             'quickjs.c:26094,21'
          Dst:             next_token
        - Src:             'quickjs.c:26107,33'
          Dst:             js_parse_skip_parens_token
        - Src:             'quickjs.c:26112,21'
          Dst:             js_emit_spread_code
        - Src:             'quickjs.c:26114,21'
          Dst:             emit_op
        - Src:             'quickjs.c:26115,21'
          Dst:             emit_u8
        - Src:             'quickjs.c:26116,21'
          Dst:             emit_op
        - Src:             'quickjs.c:26118,21'
          Dst:             js_parse_destructuring_element
        - Src:             'quickjs.c:26123,32'
          Dst:             js_parse_destructuring_var
        - Src:             'quickjs.c:26126,25'
          Dst:             js_define_var
        - Src:             'quickjs.c:26128,25'
          Dst:             need_var_reference
        - Src:             'quickjs.c:26130,25'
          Dst:             emit_op
        - Src:             'quickjs.c:26131,25'
          Dst:             emit_atom
        - Src:             'quickjs.c:26132,25'
          Dst:             emit_u16
        - Src:             'quickjs.c:26133,25'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:26143,25'
          Dst:             js_parse_left_hand_side_expr
        - Src:             'quickjs.c:26146,25'
          Dst:             get_lvalue
        - Src:             'quickjs.c:26152,21'
          Dst:             js_emit_spread_code
        - Src:             'quickjs.c:26154,21'
          Dst:             emit_op
        - Src:             'quickjs.c:26155,21'
          Dst:             emit_u8
        - Src:             'quickjs.c:26156,21'
          Dst:             emit_op
        - Src:             'quickjs.c:26161,21'
          Dst:             emit_op
        - Src:             'quickjs.c:26162,21'
          Dst:             emit_op
        - Src:             'quickjs.c:26163,21'
          Dst:             emit_op
        - Src:             'quickjs.c:26164,36'
          Dst:             emit_goto
        - Src:             'quickjs.c:26165,25'
          Dst:             next_token
        - Src:             'quickjs.c:26167,21'
          Dst:             emit_op
        - Src:             'quickjs.c:26168,25'
          Dst:             js_parse_assign_expr
        - Src:             'quickjs.c:26171,25'
          Dst:             set_object_name
        - Src:             'quickjs.c:26172,21'
          Dst:             emit_label
        - Src:             'quickjs.c:26175,17'
          Dst:             put_lvalue
        - Src:             'quickjs.c:26102,17'
          Dst:             emit_op
        - Src:             'quickjs.c:26103,17'
          Dst:             emit_u8
        - Src:             'quickjs.c:26104,17'
          Dst:             emit_op
        - Src:             'quickjs.c:26105,17'
          Dst:             emit_op
        - Src:             'quickjs.c:26184,17'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:26189,9'
          Dst:             emit_op
        - Src:             'quickjs.c:26190,9'
          Dst:             pop_break_entry
        - Src:             'quickjs.c:26191,13'
          Dst:             next_token
        - Src:             'quickjs.c:0,0'
          Dst:             js_parse_error
        - Src:             'quickjs.c:26194,16'
          Dst:             js_parse_error
        - Src:             'quickjs.c:26197,22'
          Dst:             emit_goto
        - Src:             'quickjs.c:26198,13'
          Dst:             next_token
        - Src:             'quickjs.c:26200,9'
          Dst:             emit_label
        - Src:             'quickjs.c:26202,13'
          Dst:             emit_op
        - Src:             'quickjs.c:26203,13'
          Dst:             js_parse_assign_expr
        - Src:             'quickjs.c:26205,9'
          Dst:             emit_goto
        - Src:             'quickjs.c:26206,9'
          Dst:             emit_label
        - Src:             'quickjs.c:26213,13'
          Dst:             js_parse_error
        - Src:             'quickjs.c:26225,5'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:26227,5'
          Dst:             JS_FreeAtom
    - functionName:    js_define_var
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25638
      functionLinenumberEnd: 25672
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          133
      EdgeCount:       39
      CyclomaticComplexity: 6
      functionsReached:
        - abort
        - define_var
        - js_parse_error
      functionUses:    5
      BranchProfiles:
        - Branch String:   'quickjs.c:25650,25'
          Branch Sides:    []
        - Branch String:   'quickjs.c:25653,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:25643,16'
          Dst:             js_parse_error
        - Src:             'quickjs.c:25647,16'
          Dst:             js_parse_error
        - Src:             'quickjs.c:25651,16'
          Dst:             js_parse_error
        - Src:             'quickjs.c:25667,9'
          Dst:             abort
        - Src:             'quickjs.c:25669,9'
          Dst:             define_var
    - functionName:    emit_atom
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23298
      functionLinenumberEnd: 23304
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_DupAtom
        - dbuf_claim
        - put_u32
      functionUses:    77
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23300,9'
          Dst:             dbuf_claim
        - Src:             'quickjs.c:23302,33'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:23302,5'
          Dst:             put_u32
    - functionName:    peek_token
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23180
      functionLinenumberEnd: 23183
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - simple_next_token
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23182,12'
          Dst:             simple_next_token
    - functionName:    js_parse_skip_parens_token
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24225
      functionLinenumberEnd: 24340
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         73
      ICount:          325
      EdgeCount:       94
      CyclomaticComplexity: 23
      functionsReached:
        - free_token
        - has_lf_in_range
        - is_regexp_allowed
        - js_parse_get_pos
        - js_parse_regexp
        - js_parse_seek_token
        - js_parse_template_part
        - next_token
        - token_is_pseudo_keyword
      functionUses:    10
      BranchProfiles:
        - Branch String:   'quickjs.c:24239,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:24236,5'
          Dst:             js_parse_get_pos
        - Src:             'quickjs.c:24259,17'
          Dst:             free_token
        - Src:             'quickjs.c:24263,21'
          Dst:             js_parse_template_part
        - Src:             'quickjs.c:24302,17'
          Dst:             is_regexp_allowed
        - Src:             'quickjs.c:24304,21'
          Dst:             js_parse_regexp
        - Src:             'quickjs.c:24313,14'
          Dst:             token_is_pseudo_keyword
        - Src:             'quickjs.c:24314,14'
          Dst:             token_is_pseudo_keyword
        - Src:             'quickjs.c:24320,13'
          Dst:             next_token
        - Src:             'quickjs.c:24326,17'
          Dst:             token_is_pseudo_keyword
        - Src:             'quickjs.c:24328,39'
          Dst:             has_lf_in_range
        - Src:             'quickjs.c:24337,9'
          Dst:             js_parse_seek_token
    - functionName:    js_parse_left_hand_side_expr
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24529
      functionLinenumberEnd: 24530
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_parse_postfix_expr
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:24530,12'
          Dst:             js_parse_postfix_expr
    - functionName:    get_lvalue
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25360
      functionLinenumberEnd: 25488
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         59
      ICount:          293
      EdgeCount:       74
      CyclomaticComplexity: 17
      functionsReached:
        - abort
        - emit_atom
        - emit_op
        - emit_u16
        - emit_u32
        - get_prev_opcode
        - get_u16
        - get_u32
        - has_with_scope
        - js_parse_error
        - new_label
        - update_label
      functionUses:    9
      BranchProfiles:
        - Branch String:   'quickjs.c:25371,5'
          Branch Sides:    []
        - Branch String:   'quickjs.c:25420,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:25371,21'
          Dst:             get_prev_opcode
        - Src:             'quickjs.c:25373,16'
          Dst:             get_u32
        - Src:             'quickjs.c:25374,17'
          Dst:             get_u16
        - Src:             'quickjs.c:25377,20'
          Dst:             js_parse_error
        - Src:             'quickjs.c:25381,13'
          Dst:             has_with_scope
        - Src:             'quickjs.c:25388,16'
          Dst:             get_u32
        - Src:             'quickjs.c:25392,16'
          Dst:             get_u32
        - Src:             'quickjs.c:25393,17'
          Dst:             get_u16
        - Src:             'quickjs.c:25405,20'
          Dst:             js_parse_error
        - Src:             'quickjs.c:25407,20'
          Dst:             js_parse_error
        - Src:             'quickjs.c:25409,20'
          Dst:             js_parse_error
        - Src:             'quickjs.c:25411,20'
          Dst:             js_parse_error
        - Src:             'quickjs.c:25423,25'
          Dst:             new_label
        - Src:             'quickjs.c:25426,17'
          Dst:             emit_op
        - Src:             'quickjs.c:25427,17'
          Dst:             emit_atom
        - Src:             'quickjs.c:25428,17'
          Dst:             emit_u32
        - Src:             'quickjs.c:25429,17'
          Dst:             emit_u16
        - Src:             'quickjs.c:25430,17'
          Dst:             update_label
        - Src:             'quickjs.c:25431,17'
          Dst:             emit_op
        - Src:             'quickjs.c:25434,17'
          Dst:             emit_op
        - Src:             'quickjs.c:25435,17'
          Dst:             emit_atom
        - Src:             'quickjs.c:25436,17'
          Dst:             emit_u16
        - Src:             'quickjs.c:25440,13'
          Dst:             emit_op
        - Src:             'quickjs.c:25441,13'
          Dst:             emit_atom
        - Src:             'quickjs.c:25444,13'
          Dst:             emit_op
        - Src:             'quickjs.c:25445,13'
          Dst:             emit_atom
        - Src:             'quickjs.c:25446,13'
          Dst:             emit_u16
        - Src:             'quickjs.c:25449,13'
          Dst:             emit_op
        - Src:             'quickjs.c:25452,13'
          Dst:             emit_op
        - Src:             'quickjs.c:25453,13'
          Dst:             emit_op
        - Src:             'quickjs.c:25454,13'
          Dst:             emit_op
        - Src:             'quickjs.c:25457,13'
          Dst:             abort
        - Src:             'quickjs.c:25463,25'
          Dst:             new_label
        - Src:             'quickjs.c:25466,17'
          Dst:             emit_op
        - Src:             'quickjs.c:25467,17'
          Dst:             emit_atom
        - Src:             'quickjs.c:25468,17'
          Dst:             emit_u32
        - Src:             'quickjs.c:25469,17'
          Dst:             emit_u16
        - Src:             'quickjs.c:25470,17'
          Dst:             update_label
    - functionName:    put_lvalue
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25504
      functionLinenumberEnd: 25617
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          190
      EdgeCount:       89
      CyclomaticComplexity: 44
      functionsReached:
        - JS_FreeAtom
        - abort
        - emit_label
        - emit_op
        - emit_u16
        - emit_u32
      functionUses:    8
      BranchProfiles:
        - Branch String:   'quickjs.c:25505,5'
          Branch Sides:    []
        - Branch String:   'quickjs.c:25524,9'
          Branch Sides:    []
        - Branch String:   'quickjs.c:25548,9'
          Branch Sides:    []
        - Branch String:   'quickjs.c:25569,9'
          Branch Sides:    []
        - Branch String:   'quickjs.c:25590,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:25515,13'
          Dst:             emit_op
        - Src:             'quickjs.c:25545,13'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:25546,13'
          Dst:             emit_label
        - Src:             'quickjs.c:0,0'
          Dst:             emit_op
        - Src:             'quickjs.c:25592,9'
          Dst:             emit_op
        - Src:             'quickjs.c:25593,9'
          Dst:             emit_u32
        - Src:             'quickjs.c:25594,9'
          Dst:             emit_u16
        - Src:             'quickjs.c:25597,9'
          Dst:             emit_op
        - Src:             'quickjs.c:25598,9'
          Dst:             emit_u32
        - Src:             'quickjs.c:25601,9'
          Dst:             emit_op
        - Src:             'quickjs.c:25602,9'
          Dst:             emit_u32
        - Src:             'quickjs.c:25603,9'
          Dst:             emit_u16
        - Src:             'quickjs.c:25606,9'
          Dst:             emit_op
        - Src:             'quickjs.c:25609,9'
          Dst:             emit_op
        - Src:             'quickjs.c:0,0'
          Dst:             emit_op
        - Src:             'quickjs.c:25612,9'
          Dst:             emit_op
        - Src:             'quickjs.c:25615,9'
          Dst:             abort
    - functionName:    js_parse_assign_expr2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27424
      functionLinenumberEnd: 27705
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         162
      ICount:          757
      EdgeCount:       225
      CyclomaticComplexity: 65
      functionsReached:
        - JS_FreeAtom
        - abort
        - emit_atom
        - emit_goto
        - emit_label
        - emit_op
        - emit_return
        - emit_source_pos
        - emit_u32
        - emit_u8
        - get_lvalue
        - js_parse_assign_expr2
        - js_parse_cond_expr
        - js_parse_destructuring_element
        - js_parse_error
        - js_parse_function_decl
        - js_parse_get_pos
        - js_parse_seek_token
        - js_parse_skip_parens_token
        - new_label
        - next_token
        - peek_token
        - put_lvalue
        - set_object_name
        - token_is_pseudo_keyword
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:27433,20'
          Dst:             js_parse_error
        - Src:             'quickjs.c:27435,20'
          Dst:             js_parse_error
        - Src:             'quickjs.c:27436,13'
          Dst:             next_token
        - Src:             'quickjs.c:27445,21'
          Dst:             next_token
        - Src:             'quickjs.c:27448,17'
          Dst:             js_parse_assign_expr2
        - Src:             'quickjs.c:27451,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27460,26'
          Dst:             new_label
        - Src:             'quickjs.c:27461,27'
          Dst:             new_label
        - Src:             'quickjs.c:27463,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27467,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27468,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27470,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27472,13'
          Dst:             emit_label
        - Src:             'quickjs.c:27473,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27475,17'
          Dst:             emit_op
        - Src:             'quickjs.c:27476,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27477,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27478,13'
          Dst:             emit_atom
        - Src:             'quickjs.c:27479,26'
          Dst:             emit_goto
        - Src:             'quickjs.c:27480,13'
          Dst:             emit_label
        - Src:             'quickjs.c:27483,17'
          Dst:             emit_op
        - Src:             'quickjs.c:27484,17'
          Dst:             emit_atom
        - Src:             'quickjs.c:0,0'
          Dst:             emit_op
        - Src:             'quickjs.c:27490,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27491,28'
          Dst:             emit_goto
        - Src:             'quickjs.c:27492,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27493,13'
          Dst:             emit_goto
        - Src:             'quickjs.c:27495,13'
          Dst:             emit_label
        - Src:             'quickjs.c:27496,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27497,13'
          Dst:             emit_u32
        - Src:             'quickjs.c:27498,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27499,27'
          Dst:             emit_goto
        - Src:             'quickjs.c:27503,17'
          Dst:             emit_op
        - Src:             'quickjs.c:27504,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27505,13'
          Dst:             emit_u8
        - Src:             'quickjs.c:27506,29'
          Dst:             emit_goto
        - Src:             'quickjs.c:27508,17'
          Dst:             emit_op
        - Src:             'quickjs.c:27509,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27510,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27511,13'
          Dst:             emit_atom
        - Src:             'quickjs.c:27512,13'
          Dst:             emit_goto
        - Src:             'quickjs.c:27514,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27515,13'
          Dst:             emit_atom
        - Src:             'quickjs.c:27517,13'
          Dst:             emit_label
        - Src:             'quickjs.c:27518,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27519,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27520,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27521,13'
          Dst:             emit_return
        - Src:             'quickjs.c:27524,13'
          Dst:             emit_label
        - Src:             'quickjs.c:27525,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27526,13'
          Dst:             emit_u8
        - Src:             'quickjs.c:27527,28'
          Dst:             emit_goto
        - Src:             'quickjs.c:27529,17'
          Dst:             emit_op
        - Src:             'quickjs.c:27530,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27531,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27532,13'
          Dst:             emit_atom
        - Src:             'quickjs.c:27533,13'
          Dst:             emit_goto
        - Src:             'quickjs.c:27534,13'
          Dst:             emit_goto
        - Src:             'quickjs.c:27536,13'
          Dst:             emit_label
        - Src:             'quickjs.c:27537,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27538,13'
          Dst:             emit_u8
        - Src:             'quickjs.c:27539,28'
          Dst:             emit_goto
        - Src:             'quickjs.c:27541,17'
          Dst:             emit_op
        - Src:             'quickjs.c:27542,13'
          Dst:             emit_label
        - Src:             'quickjs.c:27544,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27545,13'
          Dst:             emit_atom
        - Src:             'quickjs.c:27546,13'
          Dst:             emit_u8
        - Src:             'quickjs.c:27548,13'
          Dst:             emit_label
        - Src:             'quickjs.c:27549,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27550,13'
          Dst:             emit_atom
        - Src:             'quickjs.c:27551,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27553,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27554,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27559,17'
          Dst:             emit_op
        - Src:             'quickjs.c:27560,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27561,26'
          Dst:             emit_goto
        - Src:             'quickjs.c:27562,13'
          Dst:             emit_return
        - Src:             'quickjs.c:27563,13'
          Dst:             emit_label
        - Src:             'quickjs.c:27567,16'
          Dst:             js_parse_skip_parens_token
        - Src:             'quickjs.c:27568,16'
          Dst:             js_parse_function_decl
        - Src:             'quickjs.c:27571,16'
          Dst:             token_is_pseudo_keyword
        - Src:             'quickjs.c:27577,15'
          Dst:             peek_token
        - Src:             'quickjs.c:27582,9'
          Dst:             js_parse_get_pos
        - Src:             'quickjs.c:27583,13'
          Dst:             next_token
        - Src:             'quickjs.c:27586,14'
          Dst:             js_parse_skip_parens_token
        - Src:             'quickjs.c:27588,14'
          Dst:             peek_token
        - Src:             'quickjs.c:27589,20'
          Dst:             js_parse_function_decl
        - Src:             'quickjs.c:27594,17'
          Dst:             js_parse_seek_token
        - Src:             'quickjs.c:27598,16'
          Dst:             peek_token
        - Src:             'quickjs.c:27599,16'
          Dst:             js_parse_function_decl
        - Src:             'quickjs.c:27603,16'
          Dst:             js_parse_skip_parens_token
        - Src:             'quickjs.c:27604,13'
          Dst:             js_parse_destructuring_element
        - Src:             'quickjs.c:27613,9'
          Dst:             js_parse_cond_expr
        - Src:             'quickjs.c:27621,13'
          Dst:             next_token
        - Src:             'quickjs.c:27623,13'
          Dst:             get_lvalue
        - Src:             'quickjs.c:27626,13'
          Dst:             js_parse_assign_expr2
        - Src:             'quickjs.c:27627,13'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:27633,17'
          Dst:             set_object_name
        - Src:             'quickjs.c:27642,13'
          Dst:             emit_source_pos
        - Src:             'quickjs.c:27643,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27645,9'
          Dst:             put_lvalue
        - Src:             'quickjs.c:27649,13'
          Dst:             next_token
        - Src:             'quickjs.c:27651,13'
          Dst:             get_lvalue
        - Src:             'quickjs.c:27655,9'
          Dst:             emit_op
        - Src:             'quickjs.c:27657,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27658,18'
          Dst:             emit_goto
        - Src:             'quickjs.c:27660,9'
          Dst:             emit_op
        - Src:             'quickjs.c:27662,13'
          Dst:             js_parse_assign_expr2
        - Src:             'quickjs.c:27663,13'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:27668,13'
          Dst:             set_object_name
        - Src:             'quickjs.c:27685,13'
          Dst:             abort
        - Src:             'quickjs.c:0,0'
          Dst:             emit_op
        - Src:             'quickjs.c:27690,9'
          Dst:             put_lvalue
        - Src:             'quickjs.c:27692,18'
          Dst:             emit_goto
        - Src:             'quickjs.c:27694,9'
          Dst:             emit_label
        - Src:             'quickjs.c:27698,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27702,9'
          Dst:             emit_label
    - functionName:    js_parse_assign_expr
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27708
      functionLinenumberEnd: 27709
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_parse_assign_expr2
      functionUses:    21
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:27709,12'
          Dst:             js_parse_assign_expr2
    - functionName:    js_parse_expr
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27738
      functionLinenumberEnd: 27739
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_parse_expr2
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:27739,12'
          Dst:             js_parse_expr2
    - functionName:    js_parse_expect
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21794
      functionLinenumberEnd: 21800
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - js_parse_error
        - next_token
      functionUses:    41
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:21797,16'
          Dst:             js_parse_error
        - Src:             'quickjs.c:21799,12'
          Dst:             next_token
    - functionName:    js_parse_statement
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27915
      functionLinenumberEnd: 27916
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_parse_statement_or_decl
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:27916,12'
          Dst:             js_parse_statement_or_decl
    - functionName:    emit_u8
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23262
      functionLinenumberEnd: 23264
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_putc
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23263,5'
          Dst:             dbuf_putc
    - functionName:    pop_break_entry
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27760
      functionLinenumberEnd: 27764
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pop_scope
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23576
      functionLinenumberEnd: 23586
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - emit_op
        - emit_u16
        - get_first_lexical_var
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23581,9'
          Dst:             emit_op
        - Src:             'quickjs.c:23582,9'
          Dst:             emit_u16
        - Src:             'quickjs.c:23584,27'
          Dst:             get_first_lexical_var
    - functionName:    get_first_lexical_var
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23566
      functionLinenumberEnd: 23574
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          38
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_parse_statement_or_decl
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28323
      functionLinenumberEnd: 29080
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         403
      ICount:          1895
      EdgeCount:       555
      CyclomaticComplexity: 154
      functionsReached:
        - JS_DupAtom
        - JS_FreeAtom
        - add_var
        - close_scopes
        - dbuf_claim
        - dbuf_put
        - define_var
        - emit_break
        - emit_goto
        - emit_label
        - emit_op
        - emit_return
        - emit_source_pos
        - emit_u16
        - emit_u32
        - is_label
        - is_let
        - js_define_var
        - js_is_live_code
        - js_parse_block
        - js_parse_class
        - js_parse_destructuring_element
        - js_parse_error
        - js_parse_error_reserved_identifier
        - js_parse_expect
        - js_parse_expect_semi
        - js_parse_expr
        - js_parse_expr2
        - js_parse_expr_paren
        - js_parse_for_in_of
        - js_parse_function_decl
        - js_parse_skip_parens_token
        - js_parse_statement
        - js_parse_statement_or_decl
        - js_parse_var
        - js_unsupported_keyword
        - new_label
        - next_token
        - peek_token
        - pop_break_entry
        - pop_scope
        - push_break_entry
        - push_scope
        - put_u32
        - set_eval_ret_undefined
        - token_is_pseudo_keyword
      functionUses:    7
      BranchProfiles:
        - Branch String:   'quickjs.c:28372,5'
          Branch Sides:    []
        - Branch String:   'quickjs.c:28584,17'
          Branch Sides:    []
        - Branch String:   'quickjs.c:29009,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:28331,9'
          Dst:             is_label
        - Src:             'quickjs.c:28334,22'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:28338,17'
          Dst:             js_parse_error
        - Src:             'quickjs.c:28343,13'
          Dst:             next_token
        - Src:             'quickjs.c:28345,13'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:28354,27'
          Dst:             new_label
        - Src:             'quickjs.c:28355,13'
          Dst:             push_break_entry
        - Src:             'quickjs.c:28364,17'
          Dst:             js_parse_statement_or_decl
        - Src:             'quickjs.c:28366,13'
          Dst:             emit_label
        - Src:             'quickjs.c:28367,13'
          Dst:             pop_break_entry
        - Src:             'quickjs.c:28374,13'
          Dst:             js_parse_block
        - Src:             'quickjs.c:28381,17'
          Dst:             js_parse_error
        - Src:             'quickjs.c:28385,17'
          Dst:             js_parse_error
        - Src:             'quickjs.c:28389,17'
          Dst:             next_token
        - Src:             'quickjs.c:28392,21'
          Dst:             js_parse_expr
        - Src:             'quickjs.c:0,0'
          Dst:             emit_source_pos
        - Src:             'quickjs.c:0,0'
          Dst:             emit_return
        - Src:             'quickjs.c:28400,17'
          Dst:             js_parse_expect_semi
        - Src:             'quickjs.c:28408,17'
          Dst:             next_token
        - Src:             'quickjs.c:28411,17'
          Dst:             js_parse_error
        - Src:             'quickjs.c:28414,17'
          Dst:             js_parse_expr
        - Src:             'quickjs.c:28416,13'
          Dst:             emit_source_pos
        - Src:             'quickjs.c:28417,13'
          Dst:             emit_op
        - Src:             'quickjs.c:28418,17'
          Dst:             js_parse_expect_semi
        - Src:             'quickjs.c:28426,13'
          Dst:             js_parse_error
        - Src:             'quickjs.c:28431,13'
          Dst:             next_token
        - Src:             'quickjs.c:28433,13'
          Dst:             js_parse_var
        - Src:             'quickjs.c:28435,13'
          Dst:             js_parse_expect_semi
        - Src:             'quickjs.c:28441,17'
          Dst:             next_token
        - Src:             'quickjs.c:28444,13'
          Dst:             push_scope
        - Src:             'quickjs.c:28445,13'
          Dst:             set_eval_ret_undefined
        - Src:             'quickjs.c:28446,17'
          Dst:             js_parse_expr_paren
        - Src:             'quickjs.c:28448,22'
          Dst:             emit_goto
        - Src:             'quickjs.c:28454,17'
          Dst:             js_parse_statement_or_decl
        - Src:             'quickjs.c:28458,26'
          Dst:             emit_goto
        - Src:             'quickjs.c:28459,21'
          Dst:             next_token
        - Src:             'quickjs.c:28462,17'
          Dst:             emit_label
        - Src:             'quickjs.c:28463,21'
          Dst:             js_parse_statement_or_decl
        - Src:             'quickjs.c:28468,13'
          Dst:             emit_label
        - Src:             'quickjs.c:28469,13'
          Dst:             pop_scope
        - Src:             'quickjs.c:28477,26'
          Dst:             new_label
        - Src:             'quickjs.c:28478,27'
          Dst:             new_label
        - Src:             'quickjs.c:28480,13'
          Dst:             push_break_entry
        - Src:             'quickjs.c:28483,17'
          Dst:             next_token
        - Src:             'quickjs.c:28486,13'
          Dst:             set_eval_ret_undefined
        - Src:             'quickjs.c:28488,13'
          Dst:             emit_label
        - Src:             'quickjs.c:28489,17'
          Dst:             js_parse_expr_paren
        - Src:             'quickjs.c:28491,13'
          Dst:             emit_goto
        - Src:             'quickjs.c:28493,17'
          Dst:             js_parse_statement
        - Src:             'quickjs.c:28495,13'
          Dst:             emit_goto
        - Src:             'quickjs.c:28497,13'
          Dst:             emit_label
        - Src:             'quickjs.c:28499,13'
          Dst:             pop_break_entry
        - Src:             'quickjs.c:28507,26'
          Dst:             new_label
        - Src:             'quickjs.c:28508,27'
          Dst:             new_label
        - Src:             'quickjs.c:28509,22'
          Dst:             new_label
        - Src:             'quickjs.c:28511,13'
          Dst:             push_break_entry
        - Src:             'quickjs.c:28514,17'
          Dst:             next_token
        - Src:             'quickjs.c:28517,13'
          Dst:             emit_label
        - Src:             'quickjs.c:28519,13'
          Dst:             set_eval_ret_undefined
        - Src:             'quickjs.c:28521,17'
          Dst:             js_parse_statement
        - Src:             'quickjs.c:28524,13'
          Dst:             emit_label
        - Src:             'quickjs.c:28525,17'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:28527,17'
          Dst:             js_parse_expr_paren
        - Src:             'quickjs.c:28531,21'
          Dst:             next_token
        - Src:             'quickjs.c:28534,13'
          Dst:             emit_goto
        - Src:             'quickjs.c:28536,13'
          Dst:             emit_label
        - Src:             'quickjs.c:28538,13'
          Dst:             pop_break_entry
        - Src:             'quickjs.c:28549,17'
          Dst:             next_token
        - Src:             'quickjs.c:28552,13'
          Dst:             set_eval_ret_undefined
        - Src:             'quickjs.c:28556,17'
          Dst:             js_parse_skip_parens_token
        - Src:             'quickjs.c:28559,21'
          Dst:             js_parse_error
        - Src:             'quickjs.c:28563,21'
          Dst:             next_token
        - Src:             'quickjs.c:28567,17'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:28572,21'
          Dst:             js_parse_for_in_of
        - Src:             'quickjs.c:28580,13'
          Dst:             push_scope
        - Src:             'quickjs.c:28584,25'
          Dst:             is_let
        - Src:             'quickjs.c:28594,25'
          Dst:             next_token
        - Src:             'quickjs.c:28596,25'
          Dst:             js_parse_var
        - Src:             'quickjs.c:28599,25'
          Dst:             js_parse_expr2
        - Src:             'quickjs.c:28601,21'
          Dst:             emit_op
        - Src:             'quickjs.c:28605,17'
          Dst:             close_scopes
        - Src:             'quickjs.c:28607,17'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:28610,26'
          Dst:             new_label
        - Src:             'quickjs.c:28611,26'
          Dst:             new_label
        - Src:             'quickjs.c:28612,26'
          Dst:             new_label
        - Src:             'quickjs.c:28613,27'
          Dst:             new_label
        - Src:             'quickjs.c:28615,13'
          Dst:             push_break_entry
        - Src:             'quickjs.c:28623,17'
          Dst:             emit_label
        - Src:             'quickjs.c:28624,21'
          Dst:             js_parse_expr
        - Src:             'quickjs.c:28626,17'
          Dst:             emit_goto
        - Src:             'quickjs.c:28628,17'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:28637,17'
          Dst:             emit_goto
        - Src:             'quickjs.c:28640,17'
          Dst:             emit_label
        - Src:             'quickjs.c:28641,21'
          Dst:             js_parse_expr
        - Src:             'quickjs.c:28643,17'
          Dst:             emit_op
        - Src:             'quickjs.c:28645,21'
          Dst:             emit_goto
        - Src:             'quickjs.c:28647,17'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:28651,13'
          Dst:             emit_label
        - Src:             'quickjs.c:28652,17'
          Dst:             js_parse_statement
        - Src:             'quickjs.c:28657,13'
          Dst:             close_scopes
        - Src:             'quickjs.c:28665,17'
          Dst:             dbuf_claim
        - Src:             'quickjs.c:28666,17'
          Dst:             dbuf_put
        - Src:             'quickjs.c:28677,17'
          Dst:             emit_goto
        - Src:             'quickjs.c:28680,13'
          Dst:             emit_label
        - Src:             'quickjs.c:28682,13'
          Dst:             pop_break_entry
        - Src:             'quickjs.c:28683,13'
          Dst:             pop_scope
        - Src:             'quickjs.c:28692,17'
          Dst:             next_token
        - Src:             'quickjs.c:28698,17'
          Dst:             emit_break
        - Src:             'quickjs.c:28701,21'
          Dst:             next_token
        - Src:             'quickjs.c:28704,17'
          Dst:             js_parse_expect_semi
        - Src:             'quickjs.c:28714,17'
          Dst:             next_token
        - Src:             'quickjs.c:28717,13'
          Dst:             set_eval_ret_undefined
        - Src:             'quickjs.c:28718,17'
          Dst:             js_parse_expr_paren
        - Src:             'quickjs.c:28721,13'
          Dst:             push_scope
        - Src:             'quickjs.c:28722,27'
          Dst:             new_label
        - Src:             'quickjs.c:28723,13'
          Dst:             push_break_entry
        - Src:             'quickjs.c:28726,17'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:28736,34'
          Dst:             emit_goto
        - Src:             'quickjs.c:28738,21'
          Dst:             emit_label
        - Src:             'quickjs.c:28742,29'
          Dst:             next_token
        - Src:             'quickjs.c:28744,25'
          Dst:             emit_op
        - Src:             'quickjs.c:28745,29'
          Dst:             js_parse_expr
        - Src:             'quickjs.c:28747,29'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:28749,25'
          Dst:             emit_op
        - Src:             'quickjs.c:28751,38'
          Dst:             emit_goto
        - Src:             'quickjs.c:28742,29'
          Dst:             next_token
        - Src:             'quickjs.c:28753,42'
          Dst:             emit_goto
        - Src:             'quickjs.c:28754,29'
          Dst:             emit_label
        - Src:             'quickjs.c:28759,25'
          Dst:             next_token
        - Src:             'quickjs.c:28761,25'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:28769,38'
          Dst:             emit_goto
        - Src:             'quickjs.c:28776,21'
          Dst:             emit_op
        - Src:             'quickjs.c:28777,21'
          Dst:             emit_u32
        - Src:             'quickjs.c:28785,25'
          Dst:             js_parse_statement_or_decl
        - Src:             'quickjs.c:28789,17'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:28789,17'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:28793,17'
          Dst:             put_u32
        - Src:             'quickjs.c:28797,17'
          Dst:             emit_label
        - Src:             'quickjs.c:0,0'
          Dst:             js_parse_error
        - Src:             'quickjs.c:28799,13'
          Dst:             emit_label
        - Src:             'quickjs.c:28800,13'
          Dst:             emit_op
        - Src:             'quickjs.c:28802,13'
          Dst:             pop_break_entry
        - Src:             'quickjs.c:28803,13'
          Dst:             pop_scope
        - Src:             'quickjs.c:28812,13'
          Dst:             set_eval_ret_undefined
        - Src:             'quickjs.c:28813,17'
          Dst:             next_token
        - Src:             'quickjs.c:28815,27'
          Dst:             new_label
        - Src:             'quickjs.c:28816,28'
          Dst:             new_label
        - Src:             'quickjs.c:28817,29'
          Dst:             new_label
        - Src:             'quickjs.c:28818,25'
          Dst:             new_label
        - Src:             'quickjs.c:28820,13'
          Dst:             emit_goto
        - Src:             'quickjs.c:28822,13'
          Dst:             push_break_entry
        - Src:             'quickjs.c:28826,17'
          Dst:             js_parse_block
        - Src:             'quickjs.c:28829,13'
          Dst:             pop_break_entry
        - Src:             'quickjs.c:28831,17'
          Dst:             js_is_live_code
        - Src:             'quickjs.c:28833,17'
          Dst:             emit_op
        - Src:             'quickjs.c:28835,17'
          Dst:             emit_op
        - Src:             'quickjs.c:28836,17'
          Dst:             emit_goto
        - Src:             'quickjs.c:28837,17'
          Dst:             emit_op
        - Src:             'quickjs.c:28839,17'
          Dst:             emit_goto
        - Src:             'quickjs.c:28843,21'
          Dst:             next_token
        - Src:             'quickjs.c:28846,17'
          Dst:             push_scope
        - Src:             'quickjs.c:28847,17'
          Dst:             emit_label
        - Src:             'quickjs.c:28851,21'
          Dst:             emit_op
        - Src:             'quickjs.c:28853,25'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:28858,33'
          Dst:             js_parse_destructuring_element
        - Src:             'quickjs.c:28861,29'
          Dst:             js_parse_error
        - Src:             'quickjs.c:28865,32'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:28866,29'
          Dst:             next_token
        - Src:             'quickjs.c:28867,29'
          Dst:             js_define_var
        - Src:             'quickjs.c:28868,29'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:28872,25'
          Dst:             emit_op
        - Src:             'quickjs.c:28873,25'
          Dst:             emit_u32
        - Src:             'quickjs.c:28874,25'
          Dst:             emit_u16
        - Src:             'quickjs.c:28876,25'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:28880,17'
          Dst:             emit_goto
        - Src:             'quickjs.c:28882,17'
          Dst:             push_scope
        - Src:             'quickjs.c:28883,17'
          Dst:             push_break_entry
        - Src:             'quickjs.c:28887,21'
          Dst:             js_parse_block
        - Src:             'quickjs.c:28890,17'
          Dst:             pop_break_entry
        - Src:             'quickjs.c:28891,17'
          Dst:             pop_scope
        - Src:             'quickjs.c:28892,17'
          Dst:             pop_scope
        - Src:             'quickjs.c:28894,21'
          Dst:             js_is_live_code
        - Src:             'quickjs.c:28896,21'
          Dst:             emit_op
        - Src:             'quickjs.c:28899,21'
          Dst:             emit_op
        - Src:             'quickjs.c:28900,21'
          Dst:             emit_goto
        - Src:             'quickjs.c:28901,21'
          Dst:             emit_op
        - Src:             'quickjs.c:28902,21'
          Dst:             emit_goto
        - Src:             'quickjs.c:28919,17'
          Dst:             js_parse_error
        - Src:             'quickjs.c:0,0'
          Dst:             emit_label
        - Src:             'quickjs.c:0,0'
          Dst:             emit_goto
        - Src:             'quickjs.c:0,0'
          Dst:             emit_op
        - Src:             'quickjs.c:28922,13'
          Dst:             emit_label
        - Src:             'quickjs.c:28926,21'
          Dst:             next_token
        - Src:             'quickjs.c:28929,17'
          Dst:             push_break_entry
        - Src:             'quickjs.c:28936,25'
          Dst:             add_var
        - Src:             'quickjs.c:28939,21'
          Dst:             emit_op
        - Src:             'quickjs.c:28940,21'
          Dst:             emit_u16
        - Src:             'quickjs.c:28941,21'
          Dst:             emit_op
        - Src:             'quickjs.c:28942,21'
          Dst:             emit_u16
        - Src:             'quickjs.c:28943,21'
          Dst:             set_eval_ret_undefined
        - Src:             'quickjs.c:28946,21'
          Dst:             js_parse_block
        - Src:             'quickjs.c:28950,21'
          Dst:             emit_op
        - Src:             'quickjs.c:28951,21'
          Dst:             emit_u16
        - Src:             'quickjs.c:28952,21'
          Dst:             emit_op
        - Src:             'quickjs.c:28953,21'
          Dst:             emit_u16
        - Src:             'quickjs.c:28955,17'
          Dst:             pop_break_entry
        - Src:             'quickjs.c:28957,13'
          Dst:             emit_op
        - Src:             'quickjs.c:28958,13'
          Dst:             emit_label
        - Src:             'quickjs.c:28963,13'
          Dst:             next_token
        - Src:             'quickjs.c:28968,13'
          Dst:             js_parse_error
        - Src:             'quickjs.c:28973,17'
          Dst:             next_token
        - Src:             'quickjs.c:28976,17'
          Dst:             js_parse_expr_paren
        - Src:             'quickjs.c:28979,13'
          Dst:             push_scope
        - Src:             'quickjs.c:28980,24'
          Dst:             define_var
        - Src:             'quickjs.c:28984,13'
          Dst:             emit_op
        - Src:             'quickjs.c:28985,13'
          Dst:             emit_op
        - Src:             'quickjs.c:28986,13'
          Dst:             emit_u16
        - Src:             'quickjs.c:28988,13'
          Dst:             set_eval_ret_undefined
        - Src:             'quickjs.c:28989,17'
          Dst:             js_parse_statement
        - Src:             'quickjs.c:28993,13'
          Dst:             pop_scope
        - Src:             'quickjs.c:29000,47'
          Dst:             peek_token
        - Src:             'quickjs.c:29005,13'
          Dst:             js_parse_error_reserved_identifier
        - Src:             'quickjs.c:29009,17'
          Dst:             is_let
        - Src:             'quickjs.c:29018,13'
          Dst:             token_is_pseudo_keyword
        - Src:             'quickjs.c:29019,13'
          Dst:             peek_token
        - Src:             'quickjs.c:29022,17'
          Dst:             js_parse_error
        - Src:             'quickjs.c:29026,17'
          Dst:             js_parse_function_decl
        - Src:             'quickjs.c:29036,13'
          Dst:             js_parse_error
        - Src:             'quickjs.c:29039,13'
          Dst:             js_parse_class
        - Src:             'quickjs.c:29045,13'
          Dst:             next_token
        - Src:             'quickjs.c:29047,13'
          Dst:             js_parse_expect_semi
        - Src:             'quickjs.c:29054,9'
          Dst:             js_unsupported_keyword
        - Src:             'quickjs.c:29059,9'
          Dst:             emit_source_pos
        - Src:             'quickjs.c:29060,13'
          Dst:             js_parse_expr
        - Src:             'quickjs.c:29065,13'
          Dst:             emit_op
        - Src:             'quickjs.c:29066,13'
          Dst:             emit_u16
        - Src:             'quickjs.c:29068,13'
          Dst:             emit_op
        - Src:             'quickjs.c:29070,13'
          Dst:             js_parse_expect_semi
        - Src:             'quickjs.c:0,0'
          Dst:             JS_FreeAtom
    - functionName:    is_label
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28034
      functionLinenumberEnd: 28036
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          38
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - peek_token
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:28036,13'
          Dst:             peek_token
    - functionName:    js_parse_block
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27920
      functionLinenumberEnd: 27936
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          63
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - js_parse_expect
        - js_parse_statement_or_decl
        - next_token
        - pop_scope
        - push_scope
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:27921,9'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:27924,9'
          Dst:             push_scope
        - Src:             'quickjs.c:27926,17'
          Dst:             js_parse_statement_or_decl
        - Src:             'quickjs.c:27931,9'
          Dst:             pop_scope
        - Src:             'quickjs.c:27933,9'
          Dst:             next_token
    - functionName:    emit_source_pos
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23277
      functionLinenumberEnd: 23286
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dbuf_put_u32
        - dbuf_putc
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23282,9'
          Dst:             dbuf_putc
        - Src:             'quickjs.c:23283,9'
          Dst:             dbuf_put_u32
    - functionName:    emit_return
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27817
      functionLinenumberEnd: 27903
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         38
      ICount:          198
      EdgeCount:       51
      CyclomaticComplexity: 15
      functionsReached:
        - emit_atom
        - emit_goto
        - emit_label
        - emit_op
        - emit_u16
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:0,0'
          Dst:             emit_op
        - Src:             'quickjs.c:27836,17'
          Dst:             emit_op
        - Src:             'quickjs.c:27843,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27848,21'
          Dst:             emit_op
        - Src:             'quickjs.c:27849,21'
          Dst:             emit_op
        - Src:             'quickjs.c:27850,21'
          Dst:             emit_op
        - Src:             'quickjs.c:27851,21'
          Dst:             emit_atom
        - Src:             'quickjs.c:27853,21'
          Dst:             emit_op
        - Src:             'quickjs.c:27854,21'
          Dst:             emit_op
        - Src:             'quickjs.c:27855,34'
          Dst:             emit_goto
        - Src:             'quickjs.c:27856,21'
          Dst:             emit_op
        - Src:             'quickjs.c:27857,21'
          Dst:             emit_u16
        - Src:             'quickjs.c:27858,21'
          Dst:             emit_op
        - Src:             'quickjs.c:27859,21'
          Dst:             emit_op
        - Src:             'quickjs.c:27860,35'
          Dst:             emit_goto
        - Src:             'quickjs.c:27861,21'
          Dst:             emit_label
        - Src:             'quickjs.c:27862,21'
          Dst:             emit_op
        - Src:             'quickjs.c:27863,21'
          Dst:             emit_label
        - Src:             'quickjs.c:27864,21'
          Dst:             emit_op
        - Src:             'quickjs.c:27866,21'
          Dst:             emit_op
        - Src:             'quickjs.c:27867,21'
          Dst:             emit_op
        - Src:             'quickjs.c:27868,21'
          Dst:             emit_op
        - Src:             'quickjs.c:27872,17'
          Dst:             emit_goto
        - Src:             'quickjs.c:27883,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27884,28'
          Dst:             emit_goto
        - Src:             'quickjs.c:27885,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27892,9'
          Dst:             emit_op
        - Src:             'quickjs.c:27893,9'
          Dst:             emit_atom
        - Src:             'quickjs.c:27894,9'
          Dst:             emit_u16
        - Src:             'quickjs.c:27896,9'
          Dst:             emit_label
        - Src:             'quickjs.c:0,0'
          Dst:             emit_op
    - functionName:    js_parse_expect_semi
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21803
      functionLinenumberEnd: 21812
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          50
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - js_parse_error
        - next_token
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:21809,16'
          Dst:             js_parse_error
        - Src:             'quickjs.c:21811,12'
          Dst:             next_token
    - functionName:    js_parse_var
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27941
      functionLinenumberEnd: 28030
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         64
      ICount:          283
      EdgeCount:       88
      CyclomaticComplexity: 26
      functionsReached:
        - JS_DupAtom
        - JS_FreeAtom
        - add_export_entry
        - emit_atom
        - emit_op
        - emit_u16
        - get_lvalue
        - js_define_var
        - js_parse_assign_expr2
        - js_parse_destructuring_element
        - js_parse_error
        - js_parse_error_reserved_identifier
        - js_parse_skip_parens_token
        - need_var_reference
        - next_token
        - put_lvalue
        - set_object_name
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:27949,24'
          Dst:             js_parse_error_reserved_identifier
        - Src:             'quickjs.c:27951,20'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:27953,17'
          Dst:             js_parse_error
        - Src:             'quickjs.c:27956,17'
          Dst:             next_token
        - Src:             'quickjs.c:27958,17'
          Dst:             js_define_var
        - Src:             'quickjs.c:27961,22'
          Dst:             add_export_entry
        - Src:             'quickjs.c:27967,21'
          Dst:             next_token
        - Src:             'quickjs.c:27969,21'
          Dst:             need_var_reference
        - Src:             'quickjs.c:27974,21'
          Dst:             emit_op
        - Src:             'quickjs.c:27975,21'
          Dst:             emit_atom
        - Src:             'quickjs.c:27976,21'
          Dst:             emit_u16
        - Src:             'quickjs.c:27977,25'
          Dst:             get_lvalue
        - Src:             'quickjs.c:27979,25'
          Dst:             js_parse_assign_expr2
        - Src:             'quickjs.c:27980,25'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:27983,21'
          Dst:             set_object_name
        - Src:             'quickjs.c:27984,21'
          Dst:             put_lvalue
        - Src:             'quickjs.c:27987,25'
          Dst:             js_parse_assign_expr2
        - Src:             'quickjs.c:27989,21'
          Dst:             set_object_name
        - Src:             'quickjs.c:27990,21'
          Dst:             emit_op
        - Src:             'quickjs.c:27992,21'
          Dst:             emit_atom
        - Src:             'quickjs.c:27993,21'
          Dst:             emit_u16
        - Src:             'quickjs.c:27997,21'
          Dst:             js_parse_error
        - Src:             'quickjs.c:28002,21'
          Dst:             emit_op
        - Src:             'quickjs.c:28003,21'
          Dst:             emit_op
        - Src:             'quickjs.c:28004,21'
          Dst:             emit_atom
        - Src:             'quickjs.c:28005,21'
          Dst:             emit_u16
        - Src:             'quickjs.c:28008,13'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:28012,17'
          Dst:             js_parse_skip_parens_token
        - Src:             'quickjs.c:28013,17'
          Dst:             emit_op
        - Src:             'quickjs.c:28014,21'
          Dst:             js_parse_destructuring_element
        - Src:             'quickjs.c:28017,24'
          Dst:             js_parse_error
        - Src:             'quickjs.c:28022,13'
          Dst:             next_token
        - Src:             'quickjs.c:28028,5'
          Dst:             JS_FreeAtom
    - functionName:    set_eval_ret_undefined
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28313
      functionLinenumberEnd: 28319
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - emit_op
        - emit_u16
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:28315,9'
          Dst:             emit_op
        - Src:             'quickjs.c:28316,9'
          Dst:             emit_op
        - Src:             'quickjs.c:28317,9'
          Dst:             emit_u16
    - functionName:    js_parse_expr_paren
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25620
      functionLinenumberEnd: 25628
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          40
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - js_parse_expect
        - js_parse_expr
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:25621,9'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:25623,9'
          Dst:             js_parse_expr
        - Src:             'quickjs.c:25625,9'
          Dst:             js_parse_expect
    - functionName:    js_parse_expr2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27714
      functionLinenumberEnd: 27735
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          79
      EdgeCount:       26
      CyclomaticComplexity: 9
      functionsReached:
        - emit_op
        - js_parse_assign_expr2
        - next_token
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:27717,13'
          Dst:             js_parse_assign_expr2
        - Src:             'quickjs.c:27730,13'
          Dst:             next_token
        - Src:             'quickjs.c:27732,9'
          Dst:             emit_op
        - Src:             'quickjs.c:27717,13'
          Dst:             js_parse_assign_expr2
        - Src:             'quickjs.c:27730,13'
          Dst:             next_token
        - Src:             'quickjs.c:27732,9'
          Dst:             emit_op
        - Src:             'quickjs.c:27717,13'
          Dst:             js_parse_assign_expr2
    - functionName:    define_var
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23729
      functionLinenumberEnd: 23853
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         95
      ICount:          431
      EdgeCount:       129
      CyclomaticComplexity: 36
      functionsReached:
        - add_global_var
        - add_scope_var
        - add_var
        - find_arg
        - find_global_var
        - find_lexical_decl
        - find_var
        - find_var_in_child_scope
        - is_child_scope
        - js_parse_error
      functionUses:    10
      BranchProfiles:
        - Branch String:   'quickjs.c:23734,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:23736,15'
          Dst:             add_scope_var
        - Src:             'quickjs.c:23743,15'
          Dst:             find_lexical_decl
        - Src:             'quickjs.c:23761,28'
          Dst:             js_parse_error
        - Src:             'quickjs.c:23768,13'
          Dst:             find_arg
        - Src:             'quickjs.c:23770,20'
          Dst:             js_parse_error
        - Src:             'quickjs.c:23773,13'
          Dst:             find_var_in_child_scope
        - Src:             'quickjs.c:23774,20'
          Dst:             js_parse_error
        - Src:             'quickjs.c:23779,18'
          Dst:             find_global_var
        - Src:             'quickjs.c:23780,23'
          Dst:             is_child_scope
        - Src:             'quickjs.c:23782,24'
          Dst:             js_parse_error
        - Src:             'quickjs.c:23791,18'
          Dst:             add_global_var
        - Src:             'quickjs.c:23805,19'
          Dst:             add_scope_var
        - Src:             'quickjs.c:23815,15'
          Dst:             add_scope_var
        - Src:             'quickjs.c:23819,13'
          Dst:             find_lexical_decl
        - Src:             'quickjs.c:23823,20'
          Dst:             js_parse_error
        - Src:             'quickjs.c:23827,18'
          Dst:             find_global_var
        - Src:             'quickjs.c:23832,18'
          Dst:             add_global_var
        - Src:             'quickjs.c:23838,19'
          Dst:             find_var
        - Src:             'quickjs.c:23841,19'
          Dst:             add_var
    - functionName:    js_parse_error_reserved_identifier
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21815
      functionLinenumberEnd: 21820
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_AtomGetStr
        - js_parse_error
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:21818,27'
          Dst:             JS_AtomGetStr
        - Src:             'quickjs.c:21817,12'
          Dst:             js_parse_error
    - functionName:    js_parse_function_decl
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36487
      functionLinenumberEnd: 36488
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_parse_function_decl2
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:36488,12'
          Dst:             js_parse_function_decl2
    - functionName:    js_parse_class
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24700
      functionLinenumberEnd: 25208
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         291
      ICount:          1352
      EdgeCount:       409
      CyclomaticComplexity: 120
      functionsReached:
        - JS_DupAtom
        - JS_FreeAtom
        - add_export_entry
        - add_private_class_field
        - define_var
        - emit_atom
        - emit_class_init_end
        - emit_class_init_start
        - emit_op
        - emit_u16
        - emit_u32
        - emit_u8
        - find_private_class_field
        - get_private_setter_name
        - js_atom_concat_num
        - js_free
        - js_parse_assign_expr
        - js_parse_class_default_ctor
        - js_parse_error
        - js_parse_error_reserved_identifier
        - js_parse_expect
        - js_parse_expect_semi
        - js_parse_function_decl2
        - js_parse_left_hand_side_expr
        - js_parse_property_name
        - js_strndup
        - next_token
        - peek_token
        - pop_scope
        - push_scope
        - put_u32
        - set_object_name
        - set_object_name_computed
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:24716,9'
          Dst:             next_token
        - Src:             'quickjs.c:24720,13'
          Dst:             js_parse_error_reserved_identifier
        - Src:             'quickjs.c:24723,22'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:24724,13'
          Dst:             next_token
        - Src:             'quickjs.c:24727,9'
          Dst:             js_parse_error
        - Src:             'quickjs.c:24735,26'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:24738,5'
          Dst:             push_scope
        - Src:             'quickjs.c:24742,13'
          Dst:             next_token
        - Src:             'quickjs.c:24744,13'
          Dst:             js_parse_left_hand_side_expr
        - Src:             'quickjs.c:24747,9'
          Dst:             emit_op
        - Src:             'quickjs.c:24752,30'
          Dst:             define_var
        - Src:             'quickjs.c:24757,9'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:24761,5'
          Dst:             push_scope
        - Src:             'quickjs.c:24763,5'
          Dst:             emit_op
        - Src:             'quickjs.c:24765,5'
          Dst:             emit_u32
        - Src:             'quickjs.c:24776,5'
          Dst:             emit_op
        - Src:             'quickjs.c:24777,5'
          Dst:             emit_atom
        - Src:             'quickjs.c:24778,5'
          Dst:             emit_u8
        - Src:             'quickjs.c:24792,17'
          Dst:             next_token
        - Src:             'quickjs.c:24798,24'
          Dst:             peek_token
        - Src:             'quickjs.c:24804,17'
          Dst:             next_token
        - Src:             'quickjs.c:24810,25'
          Dst:             emit_class_init_start
        - Src:             'quickjs.c:24818,21'
          Dst:             js_parse_function_decl2
        - Src:             'quickjs.c:24825,17'
          Dst:             push_scope
        - Src:             'quickjs.c:24826,17'
          Dst:             emit_op
        - Src:             'quickjs.c:24827,17'
          Dst:             emit_atom
        - Src:             'quickjs.c:24828,17'
          Dst:             emit_u16
        - Src:             'quickjs.c:24830,17'
          Dst:             emit_op
        - Src:             'quickjs.c:24832,17'
          Dst:             emit_op
        - Src:             'quickjs.c:24833,17'
          Dst:             emit_u16
        - Src:             'quickjs.c:24835,17'
          Dst:             emit_op
        - Src:             'quickjs.c:24837,17'
          Dst:             pop_scope
        - Src:             'quickjs.c:24849,13'
          Dst:             emit_op
        - Src:             'quickjs.c:24852,25'
          Dst:             js_parse_property_name
        - Src:             'quickjs.c:24863,13'
          Dst:             js_parse_error
        - Src:             'quickjs.c:24872,23'
          Dst:             find_private_class_field
        - Src:             'quickjs.c:24886,25'
          Dst:             add_private_class_field
        - Src:             'quickjs.c:24893,17'
          Dst:             js_parse_function_decl2
        - Src:             'quickjs.c:24893,17'
          Dst:             js_parse_function_decl2
        - Src:             'quickjs.c:24900,17'
          Dst:             emit_op
        - Src:             'quickjs.c:24902,17'
          Dst:             emit_op
        - Src:             'quickjs.c:24907,35'
          Dst:             get_private_setter_name
        - Src:             'quickjs.c:24910,21'
          Dst:             emit_atom
        - Src:             'quickjs.c:24911,27'
          Dst:             add_private_class_field
        - Src:             'quickjs.c:24913,21'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:24917,21'
          Dst:             emit_atom
        - Src:             'quickjs.c:24919,17'
          Dst:             emit_u16
        - Src:             'quickjs.c:24922,21'
          Dst:             emit_op
        - Src:             'quickjs.c:24924,21'
          Dst:             emit_op
        - Src:             'quickjs.c:24925,21'
          Dst:             emit_atom
        - Src:             'quickjs.c:24927,17'
          Dst:             emit_u8
        - Src:             'quickjs.c:24844,24'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:24937,17'
          Dst:             js_parse_error
        - Src:             'quickjs.c:24942,21'
          Dst:             find_private_class_field
        - Src:             'quickjs.c:24946,21'
          Dst:             add_private_class_field
        - Src:             'quickjs.c:24949,17'
          Dst:             emit_op
        - Src:             'quickjs.c:24950,17'
          Dst:             emit_atom
        - Src:             'quickjs.c:24951,17'
          Dst:             emit_op
        - Src:             'quickjs.c:24952,17'
          Dst:             emit_atom
        - Src:             'quickjs.c:24953,17'
          Dst:             emit_u16
        - Src:             'quickjs.c:24957,21'
          Dst:             emit_class_init_start
        - Src:             'quickjs.c:24962,34'
          Dst:             js_atom_concat_num
        - Src:             'quickjs.c:24965,21'
          Dst:             define_var
        - Src:             'quickjs.c:24966,21'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:24969,17'
          Dst:             emit_op
        - Src:             'quickjs.c:24970,17'
          Dst:             emit_op
        - Src:             'quickjs.c:24971,17'
          Dst:             emit_atom
        - Src:             'quickjs.c:24972,17'
          Dst:             emit_u16
        - Src:             'quickjs.c:24975,13'
          Dst:             emit_op
        - Src:             'quickjs.c:24976,13'
          Dst:             emit_atom
        - Src:             'quickjs.c:24977,13'
          Dst:             emit_u16
        - Src:             'quickjs.c:24980,17'
          Dst:             emit_op
        - Src:             'quickjs.c:24981,17'
          Dst:             emit_atom
        - Src:             'quickjs.c:24982,17'
          Dst:             emit_u16
        - Src:             'quickjs.c:24984,17'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:24986,17'
          Dst:             emit_op
        - Src:             'quickjs.c:24987,17'
          Dst:             emit_atom
        - Src:             'quickjs.c:24988,17'
          Dst:             emit_u16
        - Src:             'quickjs.c:24992,21'
          Dst:             next_token
        - Src:             'quickjs.c:24994,21'
          Dst:             js_parse_assign_expr
        - Src:             'quickjs.c:24997,17'
          Dst:             emit_op
        - Src:             'quickjs.c:25000,17'
          Dst:             set_object_name_computed
        - Src:             'quickjs.c:25001,17'
          Dst:             emit_op
        - Src:             'quickjs.c:25003,17'
          Dst:             set_object_name_computed
        - Src:             'quickjs.c:25004,17'
          Dst:             emit_op
        - Src:             'quickjs.c:25005,17'
          Dst:             emit_op
        - Src:             'quickjs.c:25007,17'
          Dst:             set_object_name
        - Src:             'quickjs.c:25008,17'
          Dst:             emit_op
        - Src:             'quickjs.c:25009,17'
          Dst:             emit_atom
        - Src:             'quickjs.c:25012,17'
          Dst:             js_parse_expect_semi
        - Src:             'quickjs.c:25028,21'
          Dst:             js_parse_error
        - Src:             'quickjs.c:25039,17'
          Dst:             js_parse_function_decl2
        - Src:             'quickjs.c:25039,17'
          Dst:             js_parse_function_decl2
        - Src:             'quickjs.c:25046,21'
          Dst:             find_private_class_field
        - Src:             'quickjs.c:25049,21'
          Dst:             js_parse_error
        - Src:             'quickjs.c:25052,21'
          Dst:             add_private_class_field
        - Src:             'quickjs.c:25055,17'
          Dst:             emit_op
        - Src:             'quickjs.c:25056,17'
          Dst:             emit_op
        - Src:             'quickjs.c:25057,17'
          Dst:             emit_atom
        - Src:             'quickjs.c:25058,17'
          Dst:             emit_op
        - Src:             'quickjs.c:25059,17'
          Dst:             emit_atom
        - Src:             'quickjs.c:25060,17'
          Dst:             emit_u16
        - Src:             'quickjs.c:25065,21'
          Dst:             emit_op
        - Src:             'quickjs.c:25066,21'
          Dst:             emit_atom
        - Src:             'quickjs.c:25068,17'
          Dst:             emit_u8
        - Src:             'quickjs.c:25063,21'
          Dst:             emit_op
        - Src:             'quickjs.c:25068,17'
          Dst:             emit_u8
        - Src:             'quickjs.c:25072,13'
          Dst:             emit_op
        - Src:             'quickjs.c:25073,9'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:25083,13'
          Dst:             js_parse_class_default_ctor
        - Src:             'quickjs.c:25087,5'
          Dst:             put_u32
        - Src:             'quickjs.c:25091,9'
          Dst:             js_free
        - Src:             'quickjs.c:25093,27'
          Dst:             js_strndup
        - Src:             'quickjs.c:25100,9'
          Dst:             next_token
        - Src:             'quickjs.c:25109,13'
          Dst:             emit_op
        - Src:             'quickjs.c:25110,13'
          Dst:             emit_op
        - Src:             'quickjs.c:25111,13'
          Dst:             emit_op
        - Src:             'quickjs.c:25112,13'
          Dst:             emit_op
        - Src:             'quickjs.c:25116,21'
          Dst:             emit_class_init_start
        - Src:             'quickjs.c:25126,19'
          Dst:             define_var
        - Src:             'quickjs.c:25131,13'
          Dst:             emit_class_init_end
        - Src:             'quickjs.c:25133,13'
          Dst:             emit_op
        - Src:             'quickjs.c:25135,9'
          Dst:             emit_op
        - Src:             'quickjs.c:25136,9'
          Dst:             emit_atom
        - Src:             'quickjs.c:25137,9'
          Dst:             emit_u16
        - Src:             'quickjs.c:25141,5'
          Dst:             emit_op
        - Src:             'quickjs.c:25145,9'
          Dst:             emit_op
        - Src:             'quickjs.c:25146,9'
          Dst:             emit_op
        - Src:             'quickjs.c:25147,9'
          Dst:             emit_op
        - Src:             'quickjs.c:25154,9'
          Dst:             emit_op
        - Src:             'quickjs.c:25155,9'
          Dst:             emit_op
        - Src:             'quickjs.c:25156,9'
          Dst:             emit_atom
        - Src:             'quickjs.c:25157,9'
          Dst:             emit_u16
        - Src:             'quickjs.c:25163,9'
          Dst:             emit_op
        - Src:             'quickjs.c:25164,9'
          Dst:             emit_class_init_end
        - Src:             'quickjs.c:25165,9'
          Dst:             emit_op
        - Src:             'quickjs.c:25166,9'
          Dst:             emit_u16
        - Src:             'quickjs.c:25167,9'
          Dst:             emit_op
        - Src:             'quickjs.c:25170,5'
          Dst:             pop_scope
        - Src:             'quickjs.c:25171,5'
          Dst:             pop_scope
        - Src:             'quickjs.c:25175,13'
          Dst:             define_var
        - Src:             'quickjs.c:25177,9'
          Dst:             emit_op
        - Src:             'quickjs.c:25178,9'
          Dst:             emit_atom
        - Src:             'quickjs.c:25179,9'
          Dst:             emit_u16
        - Src:             'quickjs.c:25185,13'
          Dst:             emit_op
        - Src:             'quickjs.c:25186,13'
          Dst:             emit_u32
        - Src:             'quickjs.c:25191,14'
          Dst:             add_export_entry
        - Src:             'quickjs.c:25203,5'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:0,0'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:0,0'
          Dst:             JS_FreeAtom
    - functionName:    emit_class_init_start
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24649
      functionLinenumberEnd: 24680
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - emit_atom
        - emit_goto
        - emit_label
        - emit_op
        - emit_u16
        - js_parse_function_class_fields_init
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:24652,26'
          Dst:             js_parse_function_class_fields_init
        - Src:             'quickjs.c:24662,9'
          Dst:             emit_op
        - Src:             'quickjs.c:24664,27'
          Dst:             emit_goto
        - Src:             'quickjs.c:24666,9'
          Dst:             emit_op
        - Src:             'quickjs.c:24667,9'
          Dst:             emit_atom
        - Src:             'quickjs.c:24668,9'
          Dst:             emit_u16
        - Src:             'quickjs.c:24670,9'
          Dst:             emit_op
        - Src:             'quickjs.c:24671,9'
          Dst:             emit_atom
        - Src:             'quickjs.c:24672,9'
          Dst:             emit_u16
        - Src:             'quickjs.c:24674,9'
          Dst:             emit_op
        - Src:             'quickjs.c:24676,9'
          Dst:             emit_label
    - functionName:    js_parse_function_decl2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35921
      functionLinenumberEnd: 36480
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         367
      ICount:          1715
      EdgeCount:       519
      CyclomaticComplexity: 154
      functionsReached:
        - JS_DupAtom
        - JS_FreeAtom
        - add_arg
        - add_export_entry
        - add_global_var
        - add_var
        - cpool_add
        - define_var
        - emit_atom
        - emit_class_field_init
        - emit_goto
        - emit_label
        - emit_op
        - emit_return
        - emit_u16
        - emit_u32
        - find_global_var
        - find_lexical_decl
        - find_var
        - js_free_function_def
        - js_is_live_code
        - js_new_function_def
        - js_parse_assign_expr
        - js_parse_check_duplicate_parameter
        - js_parse_destructuring_element
        - js_parse_directives
        - js_parse_error
        - js_parse_error_reserved_identifier
        - js_parse_expect
        - js_parse_function_check_names
        - js_parse_skip_parens_token
        - js_parse_source_element
        - js_strndup
        - new_label
        - next_token
        - peek_token
        - push_scope
        - reparse_ident_token
        - set_object_name
        - token_is_pseudo_keyword
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:35936,13'
          Dst:             token_is_pseudo_keyword
        - Src:             'quickjs.c:35937,13'
          Dst:             peek_token
        - Src:             'quickjs.c:35938,17'
          Dst:             next_token
        - Src:             'quickjs.c:35942,13'
          Dst:             next_token
        - Src:             'quickjs.c:35945,17'
          Dst:             next_token
        - Src:             'quickjs.c:35959,24'
          Dst:             js_parse_error_reserved_identifier
        - Src:             'quickjs.c:35966,25'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:35967,17'
          Dst:             next_token
        - Src:             'quickjs.c:35968,17'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:35974,24'
          Dst:             js_parse_error
        - Src:             'quickjs.c:35978,21'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:35984,14'
          Dst:             find_global_var
        - Src:             'quickjs.c:35987,13'
          Dst:             js_parse_error
        - Src:             'quickjs.c:35988,13'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:35996,13'
          Dst:             find_lexical_decl
        - Src:             'quickjs.c:35997,27'
          Dst:             find_var
        - Src:             'quickjs.c:36010,18'
          Dst:             find_global_var
        - Src:             'quickjs.c:36013,17'
          Dst:             js_parse_error
        - Src:             'quickjs.c:36014,17'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:36021,32'
          Dst:             define_var
        - Src:             'quickjs.c:36026,17'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:36032,10'
          Dst:             js_new_function_def
        - Src:             'quickjs.c:36036,9'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:36083,9'
          Dst:             emit_op
        - Src:             'quickjs.c:36087,9'
          Dst:             emit_class_field_init
        - Src:             'quickjs.c:36083,9'
          Dst:             emit_op
        - Src:             'quickjs.c:36097,13'
          Dst:             js_parse_error_reserved_identifier
        - Src:             'quickjs.c:36101,13'
          Dst:             add_arg
        - Src:             'quickjs.c:36109,13'
          Dst:             js_parse_skip_parens_token
        - Src:             'quickjs.c:36112,17'
          Dst:             next_token
        - Src:             'quickjs.c:36115,17'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:36121,17'
          Dst:             push_scope
        - Src:             'quickjs.c:36135,21'
          Dst:             next_token
        - Src:             'quickjs.c:36141,21'
          Dst:             emit_op
        - Src:             'quickjs.c:36145,27'
          Dst:             add_arg
        - Src:             'quickjs.c:36146,21'
          Dst:             emit_op
        - Src:             'quickjs.c:0,0'
          Dst:             emit_u16
        - Src:             'quickjs.c:36149,35'
          Dst:             js_parse_destructuring_element
        - Src:             'quickjs.c:36158,21'
          Dst:             js_parse_error_reserved_identifier
        - Src:             'quickjs.c:36163,21'
          Dst:             js_parse_error_reserved_identifier
        - Src:             'quickjs.c:36167,25'
          Dst:             js_parse_check_duplicate_parameter
        - Src:             'quickjs.c:36169,25'
          Dst:             define_var
        - Src:             'quickjs.c:36173,23'
          Dst:             add_arg
        - Src:             'quickjs.c:36176,21'
          Dst:             next_token
        - Src:             'quickjs.c:36179,21'
          Dst:             emit_op
        - Src:             'quickjs.c:36180,21'
          Dst:             emit_u16
        - Src:             'quickjs.c:36182,25'
          Dst:             emit_op
        - Src:             'quickjs.c:36183,25'
          Dst:             emit_op
        - Src:             'quickjs.c:36184,25'
          Dst:             emit_atom
        - Src:             'quickjs.c:36185,25'
          Dst:             emit_u16
        - Src:             'quickjs.c:36187,21'
          Dst:             emit_op
        - Src:             'quickjs.c:36188,21'
          Dst:             emit_u16
        - Src:             'quickjs.c:36197,25'
          Dst:             next_token
        - Src:             'quickjs.c:36200,29'
          Dst:             new_label
        - Src:             'quickjs.c:36201,21'
          Dst:             emit_op
        - Src:             'quickjs.c:36202,21'
          Dst:             emit_u16
        - Src:             'quickjs.c:36203,21'
          Dst:             emit_op
        - Src:             'quickjs.c:36204,21'
          Dst:             emit_op
        - Src:             'quickjs.c:36205,21'
          Dst:             emit_op
        - Src:             'quickjs.c:36206,21'
          Dst:             emit_goto
        - Src:             'quickjs.c:36207,21'
          Dst:             emit_op
        - Src:             'quickjs.c:36208,25'
          Dst:             js_parse_assign_expr
        - Src:             'quickjs.c:36210,21'
          Dst:             set_object_name
        - Src:             'quickjs.c:36211,21'
          Dst:             emit_op
        - Src:             'quickjs.c:36212,21'
          Dst:             emit_op
        - Src:             'quickjs.c:36213,21'
          Dst:             emit_u16
        - Src:             'quickjs.c:36214,21'
          Dst:             emit_label
        - Src:             'quickjs.c:36224,25'
          Dst:             emit_op
        - Src:             'quickjs.c:36225,25'
          Dst:             emit_u16
        - Src:             'quickjs.c:36232,17'
          Dst:             js_parse_error
        - Src:             'quickjs.c:36236,17'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:0,0'
          Dst:             emit_op
        - Src:             'quickjs.c:0,0'
          Dst:             emit_atom
        - Src:             'quickjs.c:0,0'
          Dst:             emit_u16
        - Src:             'quickjs.c:36241,17'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:36247,13'
          Dst:             js_parse_error
        - Src:             'quickjs.c:36264,17'
          Dst:             find_var
        - Src:             'quickjs.c:36265,21'
          Dst:             add_var
        - Src:             'quickjs.c:36268,17'
          Dst:             emit_op
        - Src:             'quickjs.c:36269,17'
          Dst:             emit_atom
        - Src:             'quickjs.c:36270,17'
          Dst:             emit_u16
        - Src:             'quickjs.c:36271,17'
          Dst:             emit_op
        - Src:             'quickjs.c:36272,17'
          Dst:             emit_atom
        - Src:             'quickjs.c:36273,17'
          Dst:             emit_u16
        - Src:             'quickjs.c:36279,9'
          Dst:             emit_op
        - Src:             'quickjs.c:36280,9'
          Dst:             emit_u16
        - Src:             'quickjs.c:36287,9'
          Dst:             next_token
        - Src:             'quickjs.c:36293,9'
          Dst:             emit_op
        - Src:             'quickjs.c:36298,5'
          Dst:             push_scope
        - Src:             'quickjs.c:36302,13'
          Dst:             next_token
        - Src:             'quickjs.c:36306,17'
          Dst:             js_parse_function_check_names
        - Src:             'quickjs.c:36309,17'
          Dst:             js_parse_assign_expr
        - Src:             'quickjs.c:0,0'
          Dst:             emit_op
        - Src:             'quickjs.c:36322,30'
          Dst:             js_strndup
        - Src:             'quickjs.c:36331,13'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:36335,9'
          Dst:             js_parse_directives
        - Src:             'quickjs.c:36339,9'
          Dst:             js_parse_function_check_names
        - Src:             'quickjs.c:36343,13'
          Dst:             js_parse_source_element
        - Src:             'quickjs.c:36349,22'
          Dst:             js_strndup
        - Src:             'quickjs.c:36354,9'
          Dst:             next_token
        - Src:             'quickjs.c:36360,9'
          Dst:             js_is_live_code
        - Src:             'quickjs.c:36361,9'
          Dst:             emit_return
        - Src:             'quickjs.c:36370,5'
          Dst:             reparse_ident_token
        - Src:             'quickjs.c:36378,15'
          Dst:             cpool_add
        - Src:             'quickjs.c:36387,17'
          Dst:             emit_op
        - Src:             'quickjs.c:36388,17'
          Dst:             emit_u32
        - Src:             'quickjs.c:36390,21'
          Dst:             emit_op
        - Src:             'quickjs.c:36391,21'
          Dst:             emit_u32
        - Src:             'quickjs.c:36395,13'
          Dst:             emit_op
        - Src:             'quickjs.c:36396,13'
          Dst:             emit_u32
        - Src:             'quickjs.c:36402,26'
          Dst:             add_global_var
        - Src:             'quickjs.c:36417,32'
          Dst:             find_var
        - Src:             'quickjs.c:36419,36'
          Dst:             add_var
        - Src:             'quickjs.c:0,0'
          Dst:             emit_op
        - Src:             'quickjs.c:0,0'
          Dst:             emit_op
        - Src:             'quickjs.c:0,0'
          Dst:             emit_atom
        - Src:             'quickjs.c:0,0'
          Dst:             emit_u16
        - Src:             'quickjs.c:36433,17'
          Dst:             emit_op
        - Src:             'quickjs.c:36437,17'
          Dst:             emit_op
        - Src:             'quickjs.c:36438,17'
          Dst:             emit_atom
        - Src:             'quickjs.c:36439,17'
          Dst:             emit_u16
        - Src:             'quickjs.c:36443,31'
          Dst:             define_var
        - Src:             'quickjs.c:36461,22'
          Dst:             add_global_var
        - Src:             'quickjs.c:36466,26'
          Dst:             add_export_entry
        - Src:             'quickjs.c:36476,5'
          Dst:             js_free_function_def
    - functionName:    js_parse_property_name
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24049
      functionLinenumberEnd: 24162
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         116
      ICount:          477
      EdgeCount:       165
      CyclomaticComplexity: 51
      functionsReached:
        - JS_DupAtom
        - JS_FreeAtom
        - JS_ValueToAtom
        - js_parse_assign_expr
        - js_parse_error
        - js_parse_expect
        - next_token
        - peek_token
        - token_is_ident
        - token_is_pseudo_keyword
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:24060,14'
          Dst:             token_is_pseudo_keyword
        - Src:             'quickjs.c:24061,14'
          Dst:             token_is_pseudo_keyword
        - Src:             'quickjs.c:24062,32'
          Dst:             peek_token
        - Src:             'quickjs.c:24064,20'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:24065,17'
          Dst:             next_token
        - Src:             'quickjs.c:24075,13'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:24077,17'
          Dst:             next_token
        - Src:             'quickjs.c:24080,20'
          Dst:             token_is_pseudo_keyword
        - Src:             'quickjs.c:24081,20'
          Dst:             peek_token
        - Src:             'quickjs.c:24082,20'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:24083,17'
          Dst:             next_token
        - Src:             'quickjs.c:24091,13'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:24093,21'
          Dst:             next_token
        - Src:             'quickjs.c:24102,9'
          Dst:             token_is_ident
        - Src:             'quickjs.c:24107,16'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:24108,13'
          Dst:             next_token
        - Src:             'quickjs.c:24119,16'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:24122,13'
          Dst:             next_token
        - Src:             'quickjs.c:24127,16'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:24130,13'
          Dst:             next_token
        - Src:             'quickjs.c:24133,13'
          Dst:             next_token
        - Src:             'quickjs.c:24135,13'
          Dst:             js_parse_assign_expr
        - Src:             'quickjs.c:24137,13'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:24141,16'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:24142,13'
          Dst:             next_token
        - Src:             'quickjs.c:24150,9'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:24152,9'
          Dst:             js_parse_error
        - Src:             'quickjs.c:24158,5'
          Dst:             JS_FreeAtom
    - functionName:    find_private_class_field
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24592
      functionLinenumberEnd: 24603
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          52
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_private_class_field
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23858
      functionLinenumberEnd: 23871
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - add_scope_var
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23863,11'
          Dst:             add_scope_var
    - functionName:    js_atom_concat_num
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3390
      functionLinenumberEnd: 3396
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_atom_concat_str
        - u32toa
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3393,11'
          Dst:             u32toa
        - Src:             'quickjs.c:3395,12'
          Dst:             js_atom_concat_str
    - functionName:    set_object_name_computed
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24371
      functionLinenumberEnd: 24389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          62
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - emit_op
        - get_prev_opcode
        - get_u32
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:24375,14'
          Dst:             get_prev_opcode
        - Src:             'quickjs.c:24380,9'
          Dst:             emit_op
        - Src:             'quickjs.c:24384,13'
          Dst:             get_u32
        - Src:             'quickjs.c:24385,9'
          Dst:             __assert_fail
    - functionName:    set_object_name
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24343
      functionLinenumberEnd: 24368
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          72
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - JS_DupAtom
        - JS_FreeAtom
        - __assert_fail
        - emit_atom
        - emit_op
        - get_prev_opcode
        - get_u32
        - put_u32
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:24347,14'
          Dst:             get_prev_opcode
        - Src:             'quickjs.c:24352,9'
          Dst:             emit_op
        - Src:             'quickjs.c:24353,9'
          Dst:             emit_atom
        - Src:             'quickjs.c:24358,13'
          Dst:             get_u32
        - Src:             'quickjs.c:24359,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:24362,16'
          Dst:             get_u32
        - Src:             'quickjs.c:24363,9'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:24365,17'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:24364,9'
          Dst:             put_u32
    - functionName:    js_parse_class_default_ctor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24536
      functionLinenumberEnd: 24587
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          80
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - cpool_add
        - emit_atom
        - emit_class_field_init
        - emit_op
        - emit_return
        - emit_u16
        - js_new_function_def
        - push_scope
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:24541,10'
          Dst:             js_new_function_def
        - Src:             'quickjs.c:24553,5'
          Dst:             push_scope
        - Src:             'quickjs.c:24561,9'
          Dst:             emit_op
        - Src:             'quickjs.c:24563,9'
          Dst:             emit_op
        - Src:             'quickjs.c:24564,9'
          Dst:             emit_atom
        - Src:             'quickjs.c:24565,9'
          Dst:             emit_u16
        - Src:             'quickjs.c:24570,9'
          Dst:             emit_op
        - Src:             'quickjs.c:0,0'
          Dst:             emit_class_field_init
        - Src:             'quickjs.c:24576,5'
          Dst:             emit_return
        - Src:             'quickjs.c:24583,11'
          Dst:             cpool_add
    - functionName:    emit_class_init_end
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24683
      functionLinenumberEnd: 24695
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cpool_add
        - emit_op
        - emit_u32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:24687,5'
          Dst:             emit_op
        - Src:             'quickjs.c:24690,17'
          Dst:             cpool_add
        - Src:             'quickjs.c:24692,5'
          Dst:             emit_op
        - Src:             'quickjs.c:24693,5'
          Dst:             emit_u32
        - Src:             'quickjs.c:24694,5'
          Dst:             emit_op
    - functionName:    add_export_entry
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29250
      functionLinenumberEnd: 29251
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add_export_entry2
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:29251,12'
          Dst:             add_export_entry2
    - functionName:    add_export_entry2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29220
      functionLinenumberEnd: 29245
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          64
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_AtomGetStr
        - JS_DupAtom
        - __JS_ThrowSyntaxErrorAtom
        - find_export_entry
        - js_parse_error
        - js_resize_array
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:29223,9'
          Dst:             find_export_entry
        - Src:             'quickjs.c:29227,28'
          Dst:             JS_AtomGetStr
        - Src:             'quickjs.c:29226,13'
          Dst:             js_parse_error
        - Src:             'quickjs.c:29229,13'
          Dst:             __JS_ThrowSyntaxErrorAtom
        - Src:             'quickjs.c:29234,9'
          Dst:             js_resize_array
        - Src:             'quickjs.c:29241,22'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:29242,23'
          Dst:             JS_DupAtom
    - functionName:    cpool_add
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23386
      functionLinenumberEnd: 23396
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeValue
        - js_resize_array
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23389,9'
          Dst:             js_resize_array
        - Src:             'quickjs.c:23391,9'
          Dst:             JS_FreeValue
    - functionName:    js_new_function_def
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31488
      functionLinenumberEnd: 31544
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          107
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_NewAtom
        - init_list_head
        - js_dbuf_bytecode_init
        - js_dbuf_init
        - js_mallocz
        - list_add_tail
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:31491,10'
          Dst:             js_mallocz
        - Src:             'quickjs.c:31496,5'
          Dst:             init_list_head
        - Src:             'quickjs.c:31502,9'
          Dst:             list_add_tail
        - Src:             'quickjs.c:31511,5'
          Dst:             js_dbuf_bytecode_init
        - Src:             'quickjs.c:31535,20'
          Dst:             JS_NewAtom
        - Src:             'quickjs.c:31539,5'
          Dst:             js_dbuf_init
    - functionName:    emit_class_field_init
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24609
      functionLinenumberEnd: 24631
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - emit_atom
        - emit_goto
        - emit_label
        - emit_op
        - emit_u16
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:24612,5'
          Dst:             emit_op
        - Src:             'quickjs.c:24613,5'
          Dst:             emit_atom
        - Src:             'quickjs.c:24614,5'
          Dst:             emit_u16
        - Src:             'quickjs.c:24617,5'
          Dst:             emit_op
        - Src:             'quickjs.c:24618,18'
          Dst:             emit_goto
        - Src:             'quickjs.c:24620,5'
          Dst:             emit_op
        - Src:             'quickjs.c:24621,5'
          Dst:             emit_atom
        - Src:             'quickjs.c:24622,5'
          Dst:             emit_u16
        - Src:             'quickjs.c:24624,5'
          Dst:             emit_op
        - Src:             'quickjs.c:24626,5'
          Dst:             emit_op
        - Src:             'quickjs.c:24627,5'
          Dst:             emit_u16
        - Src:             'quickjs.c:24629,5'
          Dst:             emit_label
        - Src:             'quickjs.c:24630,5'
          Dst:             emit_op
    - functionName:    add_scope_var
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23619
      functionLinenumberEnd: 23629
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - add_var
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23620,15'
          Dst:             add_var
    - functionName:    token_is_ident
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24037
      functionLinenumberEnd: 24041
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          26
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    find_global_var
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23491
      functionLinenumberEnd: 23500
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          40
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    find_lexical_decl
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23513
      functionLinenumberEnd: 23528
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          104
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - find_lexical_global_var
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23524,13'
          Dst:             find_lexical_global_var
    - functionName:    add_arg
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23679
      functionLinenumberEnd: 23695
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          50
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_DupAtom
        - JS_ThrowInternalError
        - js_resize_array
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23684,9'
          Dst:             JS_ThrowInternalError
        - Src:             'quickjs.c:23687,9'
          Dst:             js_resize_array
        - Src:             'quickjs.c:23692,20'
          Dst:             JS_DupAtom
    - functionName:    js_parse_check_duplicate_parameter
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25701
      functionLinenumberEnd: 25717
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          84
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - js_parse_error
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:25716,12'
          Dst:             js_parse_error
    - functionName:    js_parse_function_check_names
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35835
      functionLinenumberEnd: 35883
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         67
      ICount:          274
      EdgeCount:       93
      CyclomaticComplexity: 28
      functionsReached:
        - is_strict_future_keyword
        - js_parse_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:35844,13'
          Dst:             is_strict_future_keyword
        - Src:             'quickjs.c:35851,17'
          Dst:             is_strict_future_keyword
        - Src:             'quickjs.c:0,0'
          Dst:             js_parse_error
    - functionName:    js_parse_directives
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35742
      functionLinenumberEnd: 35825
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         64
      ICount:          278
      EdgeCount:       69
      CyclomaticComplexity: 7
      functionsReached:
        - js_parse_get_pos
        - js_parse_seek_token
        - next_token
        - snprintf
        - strcmp
      functionUses:    2
      BranchProfiles:
        - Branch String:   'quickjs.c:35761,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:35750,5'
          Dst:             js_parse_get_pos
        - Src:             'quickjs.c:35754,9'
          Dst:             snprintf
        - Src:             'quickjs.c:35757,13'
          Dst:             next_token
        - Src:             'quickjs.c:35763,17'
          Dst:             next_token
        - Src:             'quickjs.c:35819,14'
          Dst:             strcmp
        - Src:             'quickjs.c:35824,12'
          Dst:             js_parse_seek_token
    - functionName:    js_parse_source_element
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31454
      functionLinenumberEnd: 31479
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         34
      ICount:          137
      EdgeCount:       47
      CyclomaticComplexity: 15
      functionsReached:
        - js_parse_export
        - js_parse_function_decl
        - js_parse_import
        - js_parse_statement_or_decl
        - peek_token
        - token_is_pseudo_keyword
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:31459,10'
          Dst:             token_is_pseudo_keyword
        - Src:             'quickjs.c:31460,10'
          Dst:             peek_token
        - Src:             'quickjs.c:31461,13'
          Dst:             js_parse_function_decl
        - Src:             'quickjs.c:31466,13'
          Dst:             js_parse_export
        - Src:             'quickjs.c:31469,24'
          Dst:             peek_token
        - Src:             'quickjs.c:31472,13'
          Dst:             js_parse_import
        - Src:             'quickjs.c:31475,13'
          Dst:             js_parse_statement_or_decl
    - functionName:    reparse_ident_token
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22194
      functionLinenumberEnd: 22202
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          43
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - update_token_ident
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:22200,9'
          Dst:             update_token_ident
    - functionName:    add_global_var
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23700
      functionLinenumberEnd: 23715
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_DupAtom
        - js_resize_array
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23703,9'
          Dst:             js_resize_array
        - Src:             'quickjs.c:23713,20'
          Dst:             JS_DupAtom
    - functionName:    js_free_function_def
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31582
      functionLinenumberEnd: 31640
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         45
      ICount:          258
      EdgeCount:       59
      CyclomaticComplexity: 16
      functionsReached:
        - JS_FreeAtom
        - JS_FreeValue
        - dbuf_free
        - free_bytecode_atoms
        - js_free
        - js_free_function_def
        - list_del
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:31590,9'
          Dst:             js_free_function_def
        - Src:             'quickjs.c:31593,5'
          Dst:             free_bytecode_atoms
        - Src:             'quickjs.c:31595,5'
          Dst:             dbuf_free
        - Src:             'quickjs.c:31596,5'
          Dst:             js_free
        - Src:             'quickjs.c:31597,5'
          Dst:             js_free
        - Src:             'quickjs.c:31598,5'
          Dst:             js_free
        - Src:             'quickjs.c:31601,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:31603,5'
          Dst:             js_free
        - Src:             'quickjs.c:31605,5'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:31608,9'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:31610,5'
          Dst:             js_free
        - Src:             'quickjs.c:31612,9'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:31614,5'
          Dst:             js_free
        - Src:             'quickjs.c:31617,9'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:31619,5'
          Dst:             js_free
        - Src:             'quickjs.c:31623,9'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:31625,5'
          Dst:             js_free
        - Src:             'quickjs.c:31628,9'
          Dst:             js_free
        - Src:             'quickjs.c:31630,5'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:31631,5'
          Dst:             dbuf_free
        - Src:             'quickjs.c:31633,5'
          Dst:             js_free
        - Src:             'quickjs.c:31637,9'
          Dst:             list_del
        - Src:             'quickjs.c:31639,5'
          Dst:             js_free
    - functionName:    js_parse_export
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31119
      functionLinenumberEnd: 31275
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         103
      ICount:          440
      EdgeCount:       141
      CyclomaticComplexity: 40
      functionsReached:
        - JS_DupAtom
        - JS_FreeAtom
        - JS_ValueToAtom
        - add_export_entry
        - add_star_export_entry
        - define_var
        - emit_atom
        - emit_op
        - emit_u16
        - js_parse_assign_expr
        - js_parse_class
        - js_parse_error
        - js_parse_expect
        - js_parse_expect_semi
        - js_parse_from_clause
        - js_parse_function_decl2
        - js_parse_var
        - js_string_find_invalid_codepoint
        - next_token
        - peek_token
        - set_object_name
        - token_is_ident
        - token_is_pseudo_keyword
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs.c:31144,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:31126,9'
          Dst:             next_token
        - Src:             'quickjs.c:31131,16'
          Dst:             js_parse_class
        - Src:             'quickjs.c:31133,17'
          Dst:             token_is_pseudo_keyword
        - Src:             'quickjs.c:31134,17'
          Dst:             peek_token
        - Src:             'quickjs.c:31135,16'
          Dst:             js_parse_function_decl2
        - Src:             'quickjs.c:31141,9'
          Dst:             next_token
        - Src:             'quickjs.c:31148,18'
          Dst:             token_is_ident
        - Src:             'quickjs.c:31149,17'
          Dst:             js_parse_error
        - Src:             'quickjs.c:31152,26'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:31154,17'
          Dst:             next_token
        - Src:             'quickjs.c:31156,17'
          Dst:             token_is_pseudo_keyword
        - Src:             'quickjs.c:31157,21'
          Dst:             next_token
        - Src:             'quickjs.c:31160,25'
          Dst:             js_string_find_invalid_codepoint
        - Src:             'quickjs.c:31164,35'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:31168,26'
          Dst:             token_is_ident
        - Src:             'quickjs.c:31172,35'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:31174,21'
          Dst:             next_token
        - Src:             'quickjs.c:0,0'
          Dst:             js_parse_error
        - Src:             'quickjs.c:31176,21'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:31178,21'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:31182,31'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:31184,18'
          Dst:             add_export_entry
        - Src:             'quickjs.c:31186,13'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:31187,13'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:31192,17'
          Dst:             next_token
        - Src:             'quickjs.c:31195,13'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:31197,13'
          Dst:             token_is_pseudo_keyword
        - Src:             'quickjs.c:31198,19'
          Dst:             js_parse_from_clause
        - Src:             'quickjs.c:31209,13'
          Dst:             token_is_pseudo_keyword
        - Src:             'quickjs.c:31211,17'
          Dst:             next_token
        - Src:             'quickjs.c:31213,18'
          Dst:             token_is_ident
        - Src:             'quickjs.c:31214,17'
          Dst:             js_parse_error
        - Src:             'quickjs.c:31217,27'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:31218,17'
          Dst:             next_token
        - Src:             'quickjs.c:31220,19'
          Dst:             js_parse_from_clause
        - Src:             'quickjs.c:31223,18'
          Dst:             add_export_entry
        - Src:             'quickjs.c:31225,13'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:31230,19'
          Dst:             js_parse_from_clause
        - Src:             'quickjs.c:31233,17'
          Dst:             add_star_export_entry
        - Src:             'quickjs.c:31239,20'
          Dst:             js_parse_class
        - Src:             'quickjs.c:31241,21'
          Dst:             token_is_pseudo_keyword
        - Src:             'quickjs.c:31242,21'
          Dst:             peek_token
        - Src:             'quickjs.c:31243,20'
          Dst:             js_parse_function_decl2
        - Src:             'quickjs.c:31248,17'
          Dst:             js_parse_assign_expr
        - Src:             'quickjs.c:31252,9'
          Dst:             set_object_name
        - Src:             'quickjs.c:31257,13'
          Dst:             define_var
        - Src:             'quickjs.c:31259,9'
          Dst:             emit_op
        - Src:             'quickjs.c:31260,9'
          Dst:             emit_atom
        - Src:             'quickjs.c:31261,9'
          Dst:             emit_u16
        - Src:             'quickjs.c:31263,14'
          Dst:             add_export_entry
        - Src:             'quickjs.c:31270,16'
          Dst:             js_parse_var
        - Src:             'quickjs.c:31272,16'
          Dst:             js_parse_error
        - Src:             'quickjs.c:31274,12'
          Dst:             js_parse_expect_semi
    - functionName:    js_parse_import
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31319
      functionLinenumberEnd: 31451
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         103
      ICount:          466
      EdgeCount:       146
      CyclomaticComplexity: 45
      functionsReached:
        - JS_DupAtom
        - JS_FreeAtom
        - JS_ValueToAtom
        - add_import
        - add_req_module_entry
        - js_parse_error
        - js_parse_error_reserved_identifier
        - js_parse_expect
        - js_parse_expect_semi
        - js_parse_from_clause
        - js_parse_with_clause
        - js_string_find_invalid_codepoint
        - next_token
        - token_is_ident
        - token_is_pseudo_keyword
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:31325,9'
          Dst:             next_token
        - Src:             'quickjs.c:31330,23'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:31333,13'
          Dst:             next_token
        - Src:             'quickjs.c:31334,13'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:31337,15'
          Dst:             add_req_module_entry
        - Src:             'quickjs.c:31338,9'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:31342,17'
          Dst:             js_parse_with_clause
        - Src:             'quickjs.c:31348,24'
          Dst:             js_parse_error_reserved_identifier
        - Src:             'quickjs.c:31351,26'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:31353,17'
          Dst:             next_token
        - Src:             'quickjs.c:31355,17'
          Dst:             add_import
        - Src:             'quickjs.c:31357,13'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:31361,17'
          Dst:             next_token
        - Src:             'quickjs.c:31367,17'
          Dst:             next_token
        - Src:             'quickjs.c:31369,18'
          Dst:             token_is_pseudo_keyword
        - Src:             'quickjs.c:31370,24'
          Dst:             js_parse_error
        - Src:             'quickjs.c:31371,17'
          Dst:             next_token
        - Src:             'quickjs.c:31373,18'
          Dst:             token_is_ident
        - Src:             'quickjs.c:31374,17'
          Dst:             js_parse_error
        - Src:             'quickjs.c:31377,26'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:31379,17'
          Dst:             next_token
        - Src:             'quickjs.c:31381,17'
          Dst:             add_import
        - Src:             'quickjs.c:31383,13'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:31385,17'
          Dst:             next_token
        - Src:             'quickjs.c:31392,25'
          Dst:             js_string_find_invalid_codepoint
        - Src:             'quickjs.c:31393,25'
          Dst:             js_parse_error
        - Src:             'quickjs.c:31396,35'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:31401,26'
          Dst:             token_is_ident
        - Src:             'quickjs.c:31402,25'
          Dst:             js_parse_error
        - Src:             'quickjs.c:31405,35'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:31408,21'
          Dst:             next_token
        - Src:             'quickjs.c:31410,21'
          Dst:             token_is_pseudo_keyword
        - Src:             'quickjs.c:31411,25'
          Dst:             next_token
        - Src:             'quickjs.c:31413,26'
          Dst:             token_is_ident
        - Src:             'quickjs.c:31417,34'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:31418,25'
          Dst:             next_token
        - Src:             'quickjs.c:0,0'
          Dst:             js_parse_error
        - Src:             'quickjs.c:31424,25'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:31425,25'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:31428,34'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:31430,21'
          Dst:             add_import
        - Src:             'quickjs.c:31432,17'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:31433,17'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:31436,21'
          Dst:             next_token
        - Src:             'quickjs.c:31439,17'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:31443,15'
          Dst:             js_parse_from_clause
        - Src:             'quickjs.c:31450,12'
          Dst:             js_parse_expect_semi
    - functionName:    add_req_module_entry
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29188
      functionLinenumberEnd: 29201
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_DupAtom
        - js_resize_array
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:29191,9'
          Dst:             js_resize_array
        - Src:             'quickjs.c:29197,24'
          Dst:             JS_DupAtom
    - functionName:    js_parse_with_clause
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31014
      functionLinenumberEnd: 31081
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         49
      ICount:          232
      EdgeCount:       69
      CyclomaticComplexity: 22
      functionsReached:
        - JS_DefinePropertyValue
        - JS_DupAtom
        - JS_DupValue
        - JS_FreeAtom
        - JS_HasProperty
        - JS_IsException
        - JS_IsUndefined
        - JS_NewObjectProto
        - JS_ValueToAtom
        - js_parse_error
        - js_parse_error_pos
        - js_parse_expect
        - next_token
        - token_is_ident
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:31020,9'
          Dst:             next_token
        - Src:             'quickjs.c:31022,9'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:31027,19'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:31031,18'
          Dst:             token_is_ident
        - Src:             'quickjs.c:31032,17'
          Dst:             js_parse_error
        - Src:             'quickjs.c:31035,19'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:31037,13'
          Dst:             next_token
        - Src:             'quickjs.c:31039,13'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:31040,13'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:31044,13'
          Dst:             js_parse_error_pos
        - Src:             'quickjs.c:31047,13'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:31048,34'
          Dst:             JS_NewObjectProto
        - Src:             'quickjs.c:31049,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:31050,17'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:31055,15'
          Dst:             JS_HasProperty
        - Src:             'quickjs.c:31057,13'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:31061,24'
          Dst:             js_parse_error
        - Src:             'quickjs.c:31064,38'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:31063,15'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:31065,9'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:31068,13'
          Dst:             next_token
        - Src:             'quickjs.c:31072,13'
          Dst:             next_token
        - Src:             'quickjs.c:31075,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:31080,12'
          Dst:             js_parse_expect
    - functionName:    add_import
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31285
      functionLinenumberEnd: 31316
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          117
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - JS_DupAtom
        - add_closure_var
        - js_parse_error
        - js_resize_array
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:31291,16'
          Dst:             js_parse_error
        - Src:             'quickjs.c:31296,24'
          Dst:             js_parse_error
        - Src:             'quickjs.c:31300,15'
          Dst:             add_closure_var
        - Src:             'quickjs.c:31306,9'
          Dst:             js_resize_array
        - Src:             'quickjs.c:31312,23'
          Dst:             JS_DupAtom
    - functionName:    js_parse_from_clause
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31085
      functionLinenumberEnd: 31116
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          98
      EdgeCount:       29
      CyclomaticComplexity: 10
      functionsReached:
        - JS_FreeAtom
        - JS_ValueToAtom
        - add_req_module_entry
        - js_parse_error
        - js_parse_with_clause
        - next_token
        - token_is_pseudo_keyword
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:31089,10'
          Dst:             token_is_pseudo_keyword
        - Src:             'quickjs.c:31090,9'
          Dst:             js_parse_error
        - Src:             'quickjs.c:31093,9'
          Dst:             next_token
        - Src:             'quickjs.c:31096,9'
          Dst:             js_parse_error
        - Src:             'quickjs.c:31099,19'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:31102,9'
          Dst:             next_token
        - Src:             'quickjs.c:31103,9'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:31107,11'
          Dst:             add_req_module_entry
        - Src:             'quickjs.c:31108,5'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:31112,13'
          Dst:             js_parse_with_clause
    - functionName:    add_star_export_entry
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29257
      functionLinenumberEnd: 29268
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - js_resize_array
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:29260,9'
          Dst:             js_resize_array
    - functionName:    is_strict_future_keyword
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35829
      functionLinenumberEnd: 35830
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          19
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    find_lexical_global_var
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23503
      functionLinenumberEnd: 23509
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          34
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - find_global_var
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23504,23'
          Dst:             find_global_var
    - functionName:    js_parse_function_class_fields_init
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35887
      functionLinenumberEnd: 35910
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - js_new_function_def
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:35890,10'
          Dst:             js_new_function_def
    - functionName:    find_var_in_child_scope
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23476
      functionLinenumberEnd: 23487
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          70
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - is_child_scope
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23481,17'
          Dst:             is_child_scope
    - functionName:    is_child_scope
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23464
      functionLinenumberEnd: 23471
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          36
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    need_var_reference
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25725
      functionLinenumberEnd: 25736
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          47
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_parse_cond_expr
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27395
      functionLinenumberEnd: 27420
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          69
      EdgeCount:       22
      CyclomaticComplexity: 8
      functionsReached:
        - emit_goto
        - emit_label
        - js_parse_assign_expr
        - js_parse_assign_expr2
        - js_parse_coalesce_expr
        - js_parse_expect
        - next_token
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:27398,9'
          Dst:             js_parse_coalesce_expr
        - Src:             'quickjs.c:27401,13'
          Dst:             next_token
        - Src:             'quickjs.c:27403,18'
          Dst:             emit_goto
        - Src:             'quickjs.c:27405,13'
          Dst:             js_parse_assign_expr
        - Src:             'quickjs.c:27407,13'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:27410,18'
          Dst:             emit_goto
        - Src:             'quickjs.c:27412,9'
          Dst:             emit_label
        - Src:             'quickjs.c:27414,13'
          Dst:             js_parse_assign_expr2
        - Src:             'quickjs.c:27417,9'
          Dst:             emit_label
    - functionName:    js_parse_coalesce_expr
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27367
      functionLinenumberEnd: 27391
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          63
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - emit_goto
        - emit_label
        - emit_op
        - js_parse_expr_binary
        - js_parse_logical_and_or
        - new_label
        - next_token
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:27370,9'
          Dst:             js_parse_logical_and_or
        - Src:             'quickjs.c:27373,18'
          Dst:             new_label
        - Src:             'quickjs.c:27375,17'
          Dst:             next_token
        - Src:             'quickjs.c:27378,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27379,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27380,13'
          Dst:             emit_goto
        - Src:             'quickjs.c:27381,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27383,17'
          Dst:             js_parse_expr_binary
        - Src:             'quickjs.c:27388,9'
          Dst:             emit_label
    - functionName:    js_parse_logical_and_or
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27326
      functionLinenumberEnd: 27364
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          107
      EdgeCount:       37
      CyclomaticComplexity: 12
      functionsReached:
        - emit_goto
        - emit_label
        - emit_op
        - js_parse_error
        - js_parse_expr_binary
        - js_parse_logical_and_or
        - new_label
        - next_token
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:27330,13'
          Dst:             js_parse_expr_binary
        - Src:             'quickjs.c:27333,13'
          Dst:             js_parse_logical_and_or
        - Src:             'quickjs.c:27337,18'
          Dst:             new_label
        - Src:             'quickjs.c:27340,17'
          Dst:             next_token
        - Src:             'quickjs.c:27342,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27343,13'
          Dst:             emit_goto
        - Src:             'quickjs.c:27344,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27347,21'
          Dst:             js_parse_expr_binary
        - Src:             'quickjs.c:27350,21'
          Dst:             js_parse_logical_and_or
        - Src:             'quickjs.c:27356,28'
          Dst:             js_parse_error
        - Src:             'quickjs.c:27361,9'
          Dst:             emit_label
    - functionName:    js_parse_expr_binary
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27159
      functionLinenumberEnd: 27321
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         67
      ICount:          277
      EdgeCount:       80
      CyclomaticComplexity: 15
      functionsReached:
        - JS_DupAtom
        - JS_FreeAtom
        - emit_atom
        - emit_op
        - emit_source_pos
        - emit_u16
        - js_parse_expr_binary
        - js_parse_unary
        - next_token
        - peek_token
      functionUses:    6
      BranchProfiles:
        - Branch String:   'quickjs.c:27194,9'
          Branch Sides:    []
        - Branch String:   'quickjs.c:27196,13'
          Branch Sides:    []
        - Branch String:   'quickjs.c:27211,13'
          Branch Sides:    []
        - Branch String:   'quickjs.c:27238,13'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:27164,16'
          Dst:             js_parse_unary
        - Src:             'quickjs.c:27167,16'
          Dst:             peek_token
        - Src:             'quickjs.c:27170,16'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:27171,13'
          Dst:             next_token
        - Src:             'quickjs.c:27175,13'
          Dst:             next_token
        - Src:             'quickjs.c:27177,13'
          Dst:             js_parse_expr_binary
        - Src:             'quickjs.c:27179,13'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:27182,9'
          Dst:             emit_op
        - Src:             'quickjs.c:27183,9'
          Dst:             emit_atom
        - Src:             'quickjs.c:27184,9'
          Dst:             emit_u16
        - Src:             'quickjs.c:27185,9'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:27188,13'
          Dst:             js_parse_expr_binary
        - Src:             'quickjs.c:27313,13'
          Dst:             next_token
        - Src:             'quickjs.c:27315,13'
          Dst:             js_parse_expr_binary
        - Src:             'quickjs.c:27317,9'
          Dst:             emit_source_pos
        - Src:             'quickjs.c:27318,9'
          Dst:             emit_op
    - functionName:    js_parse_unary
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27018
      functionLinenumberEnd: 27154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         77
      ICount:          382
      EdgeCount:       98
      CyclomaticComplexity: 23
      functionsReached:
        - JS_ThrowSyntaxError
        - abort
        - emit_op
        - emit_source_pos
        - get_lvalue
        - get_prev_opcode
        - js_parse_delete
        - js_parse_error
        - js_parse_postfix_expr
        - js_parse_unary
        - next_token
        - put_lvalue
      functionUses:    7
      BranchProfiles:
        - Branch String:   'quickjs.c:27022,5'
          Branch Sides:    []
        - Branch String:   'quickjs.c:27034,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:27030,13'
          Dst:             next_token
        - Src:             'quickjs.c:27032,13'
          Dst:             js_parse_unary
        - Src:             'quickjs.c:27036,13'
          Dst:             emit_source_pos
        - Src:             'quickjs.c:27040,13'
          Dst:             emit_source_pos
        - Src:             'quickjs.c:27047,13'
          Dst:             emit_source_pos
        - Src:             'quickjs.c:27051,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27055,13'
          Dst:             abort
        - Src:             'quickjs.c:27066,17'
          Dst:             next_token
        - Src:             'quickjs.c:27068,17'
          Dst:             js_parse_unary
        - Src:             'quickjs.c:27070,17'
          Dst:             get_lvalue
        - Src:             'quickjs.c:27072,13'
          Dst:             emit_source_pos
        - Src:             'quickjs.c:27073,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27074,13'
          Dst:             put_lvalue
        - Src:             'quickjs.c:27081,17'
          Dst:             next_token
        - Src:             'quickjs.c:27083,17'
          Dst:             js_parse_unary
        - Src:             'quickjs.c:27088,17'
          Dst:             get_prev_opcode
        - Src:             'quickjs.c:27096,13'
          Dst:             js_parse_delete
        - Src:             'quickjs.c:27102,20'
          Dst:             js_parse_error
        - Src:             'quickjs.c:27104,20'
          Dst:             js_parse_error
        - Src:             'quickjs.c:27105,13'
          Dst:             next_token
        - Src:             'quickjs.c:27107,13'
          Dst:             js_parse_unary
        - Src:             'quickjs.c:27114,13'
          Dst:             js_parse_postfix_expr
        - Src:             'quickjs.c:27122,17'
          Dst:             get_lvalue
        - Src:             'quickjs.c:27124,13'
          Dst:             emit_source_pos
        - Src:             'quickjs.c:27125,13'
          Dst:             emit_op
        - Src:             'quickjs.c:27126,13'
          Dst:             put_lvalue
        - Src:             'quickjs.c:27128,17'
          Dst:             next_token
        - Src:             'quickjs.c:0,0'
          Dst:             emit_op
        - Src:             'quickjs.c:27141,17'
          Dst:             JS_ThrowSyntaxError
        - Src:             'quickjs.c:27145,17'
          Dst:             next_token
        - Src:             'quickjs.c:27147,17'
          Dst:             js_parse_unary
        - Src:             'quickjs.c:27149,13'
          Dst:             emit_source_pos
        - Src:             'quickjs.c:27150,13'
          Dst:             emit_op
    - functionName:    js_parse_delete
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26925
      functionLinenumberEnd: 27014
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         32
      ICount:          206
      EdgeCount:       39
      CyclomaticComplexity: 9
      functionsReached:
        - JS_AtomToValue
        - JS_FreeAtom
        - JS_FreeValue
        - emit_atom
        - emit_goto
        - emit_label
        - emit_op
        - emit_push_const
        - emit_u8
        - get_prev_opcode
        - get_u32
        - js_parse_error
        - js_parse_unary
        - next_token
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs.c:26934,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:26930,9'
          Dst:             next_token
        - Src:             'quickjs.c:26932,9'
          Dst:             js_parse_unary
        - Src:             'quickjs.c:26934,21'
          Dst:             get_prev_opcode
        - Src:             'quickjs.c:26941,35'
          Dst:             get_u32
        - Src:             'quickjs.c:26946,20'
          Dst:             get_u32
        - Src:             'quickjs.c:26948,19'
          Dst:             JS_AtomToValue
        - Src:             'quickjs.c:26949,19'
          Dst:             emit_push_const
        - Src:             'quickjs.c:26950,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:26951,13'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:26954,13'
          Dst:             emit_op
        - Src:             'quickjs.c:26956,30'
          Dst:             emit_goto
        - Src:             'quickjs.c:26957,17'
          Dst:             emit_label
        - Src:             'quickjs.c:26959,17'
          Dst:             emit_op
        - Src:             'quickjs.c:26960,17'
          Dst:             emit_op
        - Src:             'quickjs.c:26961,17'
          Dst:             emit_label
        - Src:             'quickjs.c:26969,9'
          Dst:             emit_op
        - Src:             'quickjs.c:26974,31'
          Dst:             get_u32
        - Src:             'quickjs.c:26977,13'
          Dst:             emit_op
        - Src:             'quickjs.c:26978,26'
          Dst:             emit_goto
        - Src:             'quickjs.c:26979,13'
          Dst:             emit_label
        - Src:             'quickjs.c:26981,13'
          Dst:             emit_op
        - Src:             'quickjs.c:26982,13'
          Dst:             emit_op
        - Src:             'quickjs.c:26983,13'
          Dst:             emit_label
        - Src:             'quickjs.c:26989,16'
          Dst:             get_u32
        - Src:             'quickjs.c:26993,20'
          Dst:             js_parse_error
        - Src:             'quickjs.c:26999,16'
          Dst:             js_parse_error
        - Src:             'quickjs.c:27003,9'
          Dst:             emit_op
        - Src:             'quickjs.c:27004,9'
          Dst:             emit_atom
        - Src:             'quickjs.c:27005,9'
          Dst:             emit_u8
        - Src:             'quickjs.c:27009,9'
          Dst:             emit_op
        - Src:             'quickjs.c:27010,9'
          Dst:             emit_op
    - functionName:    js_parse_postfix_expr
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26257
      functionLinenumberEnd: 26922
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         322
      ICount:          1582
      EdgeCount:       440
      CyclomaticComplexity: 120
      functionsReached:
        - JS_AtomToValue
        - JS_DupAtom
        - JS_FreeAtom
        - JS_FreeValue
        - JS_IsException
        - build_backtrace
        - emit_atom
        - emit_class_field_init
        - emit_goto
        - emit_label
        - emit_label_raw
        - emit_op
        - emit_push_const
        - emit_source_pos
        - emit_u16
        - emit_u32
        - emit_u8
        - get_line_col
        - get_prev_opcode
        - get_u16
        - get_u32
        - has_with_scope
        - js_parse_array_literal
        - js_parse_assign_expr
        - js_parse_class
        - js_parse_error
        - js_parse_error_reserved_identifier
        - js_parse_expect
        - js_parse_expr
        - js_parse_expr_paren
        - js_parse_function_decl
        - js_parse_object_literal
        - js_parse_postfix_expr
        - js_parse_regexp
        - js_parse_template
        - next_token
        - optional_chain_test
        - peek_token
        - token_is_ident
        - token_is_pseudo_keyword
      functionUses:    3
      BranchProfiles:
        - Branch String:   'quickjs.c:26264,5'
          Branch Sides:    []
        - Branch String:   'quickjs.c:26563,17'
          Branch Sides:    []
        - Branch String:   'quickjs.c:26758,17'
          Branch Sides:    []
        - Branch String:   'quickjs.c:26803,17'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:26284,21'
          Dst:             emit_push_const
        - Src:             'quickjs.c:0,0'
          Dst:             emit_op
        - Src:             'quickjs.c:0,0'
          Dst:             emit_u32
        - Src:             'quickjs.c:26288,13'
          Dst:             next_token
        - Src:             'quickjs.c:26292,13'
          Dst:             js_parse_template
        - Src:             'quickjs.c:26296,13'
          Dst:             emit_push_const
        - Src:             'quickjs.c:26298,13'
          Dst:             next_token
        - Src:             'quickjs.c:26312,24'
          Dst:             js_parse_error
        - Src:             'quickjs.c:26314,17'
          Dst:             js_parse_regexp
        - Src:             'quickjs.c:26316,19'
          Dst:             emit_push_const
        - Src:             'quickjs.c:26319,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:26322,28'
          Dst:             get_line_col
        - Src:             'quickjs.c:26323,17'
          Dst:             build_backtrace
        - Src:             'quickjs.c:26327,19'
          Dst:             emit_push_const
        - Src:             'quickjs.c:26328,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:26334,13'
          Dst:             emit_op
        - Src:             'quickjs.c:26335,17'
          Dst:             next_token
        - Src:             'quickjs.c:26340,13'
          Dst:             js_parse_expr_paren
        - Src:             'quickjs.c:26344,13'
          Dst:             js_parse_function_decl
        - Src:             'quickjs.c:26350,13'
          Dst:             js_parse_class
        - Src:             'quickjs.c:26354,13'
          Dst:             next_token
        - Src:             'quickjs.c:26356,9'
          Dst:             emit_op
        - Src:             'quickjs.c:26359,13'
          Dst:             next_token
        - Src:             'quickjs.c:26361,9'
          Dst:             emit_op
        - Src:             'quickjs.c:26362,9'
          Dst:             emit_atom
        - Src:             'quickjs.c:26363,9'
          Dst:             emit_u16
        - Src:             'quickjs.c:26366,13'
          Dst:             next_token
        - Src:             'quickjs.c:26368,9'
          Dst:             emit_op
        - Src:             'quickjs.c:26371,13'
          Dst:             next_token
        - Src:             'quickjs.c:26373,9'
          Dst:             emit_op
        - Src:             'quickjs.c:26380,24'
          Dst:             js_parse_error_reserved_identifier
        - Src:             'quickjs.c:26383,17'
          Dst:             token_is_pseudo_keyword
        - Src:             'quickjs.c:26384,17'
          Dst:             peek_token
        - Src:             'quickjs.c:26385,21'
          Dst:             next_token
        - Src:             'quickjs.c:26388,25'
          Dst:             js_parse_function_decl
        - Src:             'quickjs.c:26393,28'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:26399,21'
          Dst:             js_parse_error
        - Src:             'quickjs.c:26402,24'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:26403,21'
          Dst:             next_token
        - Src:             'quickjs.c:26404,21'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:26408,17'
          Dst:             emit_source_pos
        - Src:             'quickjs.c:26409,17'
          Dst:             emit_op
        - Src:             'quickjs.c:26410,17'
          Dst:             emit_u32
        - Src:             'quickjs.c:26411,17'
          Dst:             emit_u16
        - Src:             'quickjs.c:26418,17'
          Dst:             js_parse_object_literal
        - Src:             'quickjs.c:26421,17'
          Dst:             js_parse_array_literal
        - Src:             'quickjs.c:26426,13'
          Dst:             next_token
        - Src:             'quickjs.c:26429,17'
          Dst:             next_token
        - Src:             'quickjs.c:26431,18'
          Dst:             token_is_pseudo_keyword
        - Src:             'quickjs.c:26432,24'
          Dst:             js_parse_error
        - Src:             'quickjs.c:26434,24'
          Dst:             js_parse_error
        - Src:             'quickjs.c:26435,17'
          Dst:             next_token
        - Src:             'quickjs.c:26437,13'
          Dst:             emit_op
        - Src:             'quickjs.c:26438,13'
          Dst:             emit_atom
        - Src:             'quickjs.c:26439,13'
          Dst:             emit_u16
        - Src:             'quickjs.c:26441,17'
          Dst:             js_parse_postfix_expr
        - Src:             'quickjs.c:26446,17'
          Dst:             emit_source_pos
        - Src:             'quickjs.c:26447,17'
          Dst:             emit_op
        - Src:             'quickjs.c:26448,17'
          Dst:             emit_op
        - Src:             'quickjs.c:26449,17'
          Dst:             emit_u16
        - Src:             'quickjs.c:26456,13'
          Dst:             next_token
        - Src:             'quickjs.c:26460,24'
          Dst:             js_parse_error
        - Src:             'quickjs.c:26464,24'
          Dst:             js_parse_error
        - Src:             'quickjs.c:26465,13'
          Dst:             emit_op
        - Src:             'quickjs.c:26466,13'
          Dst:             emit_atom
        - Src:             'quickjs.c:26467,13'
          Dst:             emit_u16
        - Src:             'quickjs.c:26468,13'
          Dst:             emit_op
        - Src:             'quickjs.c:26469,13'
          Dst:             emit_atom
        - Src:             'quickjs.c:26470,13'
          Dst:             emit_u16
        - Src:             'quickjs.c:26471,13'
          Dst:             emit_op
        - Src:             'quickjs.c:26473,20'
          Dst:             js_parse_error
        - Src:             'quickjs.c:26477,13'
          Dst:             next_token
        - Src:             'quickjs.c:26480,17'
          Dst:             next_token
        - Src:             'quickjs.c:26482,18'
          Dst:             token_is_pseudo_keyword
        - Src:             'quickjs.c:26483,24'
          Dst:             js_parse_error
        - Src:             'quickjs.c:26485,24'
          Dst:             js_parse_error
        - Src:             'quickjs.c:26486,17'
          Dst:             next_token
        - Src:             'quickjs.c:26488,13'
          Dst:             emit_op
        - Src:             'quickjs.c:26489,13'
          Dst:             emit_u8
        - Src:             'quickjs.c:26491,17'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:26494,24'
          Dst:             js_parse_error
        - Src:             'quickjs.c:26495,17'
          Dst:             js_parse_assign_expr
        - Src:             'quickjs.c:26498,21'
          Dst:             next_token
        - Src:             'quickjs.c:26501,25'
          Dst:             js_parse_assign_expr
        - Src:             'quickjs.c:26505,29'
          Dst:             next_token
        - Src:             'quickjs.c:0,0'
          Dst:             emit_op
        - Src:             'quickjs.c:26514,17'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:26516,13'
          Dst:             emit_op
        - Src:             'quickjs.c:26520,16'
          Dst:             js_parse_error
        - Src:             'quickjs.c:26531,24'
          Dst:             js_parse_error
        - Src:             'quickjs.c:26534,17'
          Dst:             next_token
        - Src:             'quickjs.c:26547,24'
          Dst:             js_parse_error
        - Src:             'quickjs.c:26558,17'
          Dst:             next_token
        - Src:             'quickjs.c:26563,33'
          Dst:             get_prev_opcode
        - Src:             'quickjs.c:26572,43'
          Dst:             get_u32
        - Src:             'quickjs.c:26577,38'
          Dst:             emit_goto
        - Src:             'quickjs.c:26578,25'
          Dst:             emit_label
        - Src:             'quickjs.c:26582,25'
          Dst:             emit_op
        - Src:             'quickjs.c:26583,25'
          Dst:             emit_label
        - Src:             'quickjs.c:26601,43'
          Dst:             get_u32
        - Src:             'quickjs.c:26606,38'
          Dst:             emit_goto
        - Src:             'quickjs.c:26607,25'
          Dst:             emit_label
        - Src:             'quickjs.c:26611,25'
          Dst:             emit_op
        - Src:             'quickjs.c:26612,25'
          Dst:             emit_label
        - Src:             'quickjs.c:26621,32'
          Dst:             get_u32
        - Src:             'quickjs.c:26622,33'
          Dst:             get_u16
        - Src:             'quickjs.c:26635,33'
          Dst:             has_with_scope
        - Src:             'quickjs.c:26655,21'
          Dst:             optional_chain_test
        - Src:             'quickjs.c:26663,21'
          Dst:             js_parse_template
        - Src:             'quickjs.c:26667,17'
          Dst:             emit_op
        - Src:             'quickjs.c:26668,17'
          Dst:             emit_atom
        - Src:             'quickjs.c:26669,17'
          Dst:             emit_u16
        - Src:             'quickjs.c:26671,17'
          Dst:             emit_op
        - Src:             'quickjs.c:26673,17'
          Dst:             emit_op
        - Src:             'quickjs.c:26674,17'
          Dst:             emit_atom
        - Src:             'quickjs.c:26675,17'
          Dst:             emit_u16
        - Src:             'quickjs.c:26677,17'
          Dst:             emit_op
        - Src:             'quickjs.c:26684,28'
          Dst:             js_parse_error
        - Src:             'quickjs.c:26688,21'
          Dst:             js_parse_assign_expr
        - Src:             'quickjs.c:26694,21'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:26698,17'
          Dst:             emit_op
        - Src:             'quickjs.c:26699,17'
          Dst:             emit_u16
        - Src:             'quickjs.c:26700,17'
          Dst:             emit_op
        - Src:             'quickjs.c:26701,17'
          Dst:             emit_u32
        - Src:             'quickjs.c:26706,29'
          Dst:             next_token
        - Src:             'quickjs.c:26708,29'
          Dst:             js_parse_assign_expr
        - Src:             'quickjs.c:26739,29'
          Dst:             js_parse_assign_expr
        - Src:             'quickjs.c:26742,25'
          Dst:             emit_op
        - Src:             'quickjs.c:0,0'
          Dst:             emit_op
        - Src:             'quickjs.c:26748,25'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:26751,21'
          Dst:             next_token
        - Src:             'quickjs.c:26754,17'
          Dst:             emit_op
        - Src:             'quickjs.c:26756,17'
          Dst:             emit_source_pos
        - Src:             'quickjs.c:26764,21'
          Dst:             emit_op
        - Src:             'quickjs.c:26765,21'
          Dst:             emit_op
        - Src:             'quickjs.c:26766,21'
          Dst:             emit_u16
        - Src:             'quickjs.c:26769,21'
          Dst:             emit_op
        - Src:             'quickjs.c:26770,21'
          Dst:             emit_u16
        - Src:             'quickjs.c:26775,25'
          Dst:             emit_op
        - Src:             'quickjs.c:26776,25'
          Dst:             emit_u16
        - Src:             'quickjs.c:26778,25'
          Dst:             emit_op
        - Src:             'quickjs.c:26779,25'
          Dst:             emit_op
        - Src:             'quickjs.c:26780,25'
          Dst:             emit_atom
        - Src:             'quickjs.c:26781,25'
          Dst:             emit_u16
        - Src:             'quickjs.c:26783,25'
          Dst:             emit_class_field_init
        - Src:             'quickjs.c:26786,25'
          Dst:             emit_op
        - Src:             'quickjs.c:26787,25'
          Dst:             emit_op
        - Src:             'quickjs.c:26788,25'
          Dst:             emit_u16
        - Src:             'quickjs.c:26791,25'
          Dst:             emit_op
        - Src:             'quickjs.c:26792,25'
          Dst:             emit_op
        - Src:             'quickjs.c:26793,25'
          Dst:             emit_op
        - Src:             'quickjs.c:26794,25'
          Dst:             emit_u16
        - Src:             'quickjs.c:26799,21'
          Dst:             next_token
        - Src:             'quickjs.c:26802,17'
          Dst:             emit_source_pos
        - Src:             'quickjs.c:26808,21'
          Dst:             emit_op
        - Src:             'quickjs.c:26809,21'
          Dst:             emit_u16
        - Src:             'quickjs.c:26812,21'
          Dst:             emit_op
        - Src:             'quickjs.c:26813,21'
          Dst:             emit_u16
        - Src:             'quickjs.c:26814,21'
          Dst:             emit_u16
        - Src:             'quickjs.c:26819,25'
          Dst:             emit_op
        - Src:             'quickjs.c:26820,25'
          Dst:             emit_u16
        - Src:             'quickjs.c:26823,25'
          Dst:             emit_op
        - Src:             'quickjs.c:26824,25'
          Dst:             emit_op
        - Src:             'quickjs.c:26825,25'
          Dst:             emit_atom
        - Src:             'quickjs.c:26826,25'
          Dst:             emit_u16
        - Src:             'quickjs.c:26828,25'
          Dst:             emit_class_field_init
        - Src:             'quickjs.c:26830,25'
          Dst:             emit_op
        - Src:             'quickjs.c:26831,25'
          Dst:             emit_u16
        - Src:             'quickjs.c:26833,25'
          Dst:             emit_op
        - Src:             'quickjs.c:26834,25'
          Dst:             emit_u16
        - Src:             'quickjs.c:26842,17'
          Dst:             next_token
        - Src:             'quickjs.c:26845,13'
          Dst:             emit_source_pos
        - Src:             'quickjs.c:26848,21'
          Dst:             get_prev_opcode
        - Src:             'quickjs.c:26849,28'
          Dst:             js_parse_error
        - Src:             'quickjs.c:26852,21'
          Dst:             optional_chain_test
        - Src:             'quickjs.c:26854,17'
          Dst:             emit_op
        - Src:             'quickjs.c:26855,17'
          Dst:             emit_atom
        - Src:             'quickjs.c:26856,17'
          Dst:             emit_u16
        - Src:             'quickjs.c:26858,22'
          Dst:             token_is_ident
        - Src:             'quickjs.c:26859,28'
          Dst:             js_parse_error
        - Src:             'quickjs.c:26861,21'
          Dst:             get_prev_opcode
        - Src:             'quickjs.c:26864,27'
          Dst:             JS_AtomToValue
        - Src:             'quickjs.c:26865,27'
          Dst:             emit_push_const
        - Src:             'quickjs.c:26866,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:26869,21'
          Dst:             emit_op
        - Src:             'quickjs.c:26872,25'
          Dst:             optional_chain_test
        - Src:             'quickjs.c:26874,21'
          Dst:             emit_op
        - Src:             'quickjs.c:26875,21'
          Dst:             emit_atom
        - Src:             'quickjs.c:26878,17'
          Dst:             next_token
        - Src:             'quickjs.c:26884,23'
          Dst:             get_prev_opcode
        - Src:             'quickjs.c:26884,23'
          Dst:             get_prev_opcode
        - Src:             'quickjs.c:26886,17'
          Dst:             optional_chain_test
        - Src:             'quickjs.c:26888,17'
          Dst:             next_token
        - Src:             'quickjs.c:26890,17'
          Dst:             js_parse_expr
        - Src:             'quickjs.c:26892,17'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:26894,13'
          Dst:             emit_source_pos
        - Src:             'quickjs.c:26896,17'
          Dst:             emit_op
        - Src:             'quickjs.c:26898,17'
          Dst:             emit_op
        - Src:             'quickjs.c:26907,9'
          Dst:             emit_label_raw
        - Src:             'quickjs.c:26910,18'
          Dst:             get_prev_opcode
    - functionName:    emit_push_const
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23400
      functionLinenumberEnd: 23421
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          70
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - JS_DupValue
        - JS_NewAtomStr
        - __JS_AtomIsTaggedInt
        - cpool_add
        - emit_op
        - emit_u32
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23406,9'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:23407,16'
          Dst:             JS_NewAtomStr
        - Src:             'quickjs.c:23408,38'
          Dst:             __JS_AtomIsTaggedInt
        - Src:             'quickjs.c:23415,24'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:23415,11'
          Dst:             cpool_add
        - Src:             'quickjs.c:0,0'
          Dst:             emit_op
        - Src:             'quickjs.c:0,0'
          Dst:             emit_u32
    - functionName:    js_parse_template
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23916
      functionLinenumberEnd: 24023
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         61
      ICount:          304
      EdgeCount:       84
      CyclomaticComplexity: 25
      functionsReached:
        - JS_DefinePropertyValue
        - JS_DefinePropertyValueUint32
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_NewArray
        - emit_atom
        - emit_op
        - emit_push_const
        - emit_u16
        - free_token
        - js_parse_error
        - js_parse_expect
        - js_parse_expr
        - js_parse_string
        - js_parse_template_part
        - next_token
        - seal_template_obj
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23927,27'
          Dst:             JS_NewArray
        - Src:             'quickjs.c:23928,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:23931,15'
          Dst:             emit_push_const
        - Src:             'quickjs.c:23932,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:23935,21'
          Dst:             JS_NewArray
        - Src:             'quickjs.c:23936,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:23938,13'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:23950,46'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:23949,17'
          Dst:             JS_DefinePropertyValueUint32
        - Src:             'quickjs.c:23957,17'
          Dst:             js_parse_string
        - Src:             'quickjs.c:23960,17'
          Dst:             JS_DefinePropertyValueUint32
        - Src:             'quickjs.c:23970,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:23972,17'
          Dst:             js_parse_string
        - Src:             'quickjs.c:23976,23'
          Dst:             emit_push_const
        - Src:             'quickjs.c:23977,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:23983,21'
          Dst:             emit_op
        - Src:             'quickjs.c:23984,21'
          Dst:             emit_atom
        - Src:             'quickjs.c:23988,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:24014,9'
          Dst:             seal_template_obj
        - Src:             'quickjs.c:24015,9'
          Dst:             seal_template_obj
        - Src:             'quickjs.c:23993,13'
          Dst:             next_token
        - Src:             'quickjs.c:23995,13'
          Dst:             js_parse_expr
        - Src:             'quickjs.c:23999,20'
          Dst:             js_parse_error
        - Src:             'quickjs.c:24002,9'
          Dst:             free_token
        - Src:             'quickjs.c:24006,13'
          Dst:             js_parse_template_part
        - Src:             'quickjs.c:24009,12'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:24018,9'
          Dst:             emit_op
        - Src:             'quickjs.c:24019,9'
          Dst:             emit_u16
        - Src:             'quickjs.c:24022,12'
          Dst:             next_token
    - functionName:    js_parse_regexp
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22028
      functionLinenumberEnd: 22133
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         74
      ICount:          326
      EdgeCount:       104
      CyclomaticComplexity: 32
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - js_parse_error
        - js_parse_error_pos
        - lre_js_is_ident_next
        - string_buffer_end
        - string_buffer_free
        - string_buffer_init
        - string_buffer_putc
        - string_buffer_putc8
        - unicode_from_utf8
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:22039,9'
          Dst:             string_buffer_init
        - Src:             'quickjs.c:22041,9'
          Dst:             string_buffer_init
        - Src:             'quickjs.c:22046,13'
          Dst:             js_parse_error
        - Src:             'quickjs.c:22061,17'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:22070,21'
          Dst:             unicode_from_utf8
        - Src:             'quickjs.c:22080,17'
          Dst:             unicode_from_utf8
        - Src:             'quickjs.c:22083,17'
          Dst:             js_parse_error_pos
        - Src:             'quickjs.c:22089,17'
          Dst:             js_parse_error_pos
        - Src:             'quickjs.c:22094,13'
          Dst:             string_buffer_putc
        - Src:             'quickjs.c:22103,17'
          Dst:             unicode_from_utf8
        - Src:             'quickjs.c:22109,14'
          Dst:             lre_js_is_ident_next
        - Src:             'quickjs.c:22111,13'
          Dst:             string_buffer_putc
        - Src:             'quickjs.c:22116,16'
          Dst:             string_buffer_end
        - Src:             'quickjs.c:22117,17'
          Dst:             string_buffer_end
        - Src:             'quickjs.c:22118,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:22119,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:22120,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:22121,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:22130,5'
          Dst:             string_buffer_free
        - Src:             'quickjs.c:22131,5'
          Dst:             string_buffer_free
    - functionName:    js_parse_object_literal
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24392
      functionLinenumberEnd: 24506
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         64
      ICount:          281
      EdgeCount:       89
      CyclomaticComplexity: 27
      functionsReached:
        - JS_FreeAtom
        - emit_atom
        - emit_op
        - emit_u16
        - emit_u8
        - js_parse_assign_expr
        - js_parse_error
        - js_parse_expect
        - js_parse_function_decl
        - js_parse_property_name
        - next_token
        - set_object_name
        - set_object_name_computed
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:24398,9'
          Dst:             next_token
        - Src:             'quickjs.c:24401,5'
          Dst:             emit_op
        - Src:             'quickjs.c:24408,17'
          Dst:             next_token
        - Src:             'quickjs.c:24410,17'
          Dst:             js_parse_assign_expr
        - Src:             'quickjs.c:24412,13'
          Dst:             emit_op
        - Src:             'quickjs.c:24413,13'
          Dst:             emit_op
        - Src:             'quickjs.c:24414,13'
          Dst:             emit_u8
        - Src:             'quickjs.c:24415,13'
          Dst:             emit_op
        - Src:             'quickjs.c:24416,13'
          Dst:             emit_op
        - Src:             'quickjs.c:24420,21'
          Dst:             js_parse_property_name
        - Src:             'quickjs.c:24426,13'
          Dst:             emit_op
        - Src:             'quickjs.c:24427,13'
          Dst:             emit_atom
        - Src:             'quickjs.c:24428,13'
          Dst:             emit_u16
        - Src:             'quickjs.c:24429,13'
          Dst:             emit_op
        - Src:             'quickjs.c:24430,13'
          Dst:             emit_atom
        - Src:             'quickjs.c:24450,17'
          Dst:             js_parse_function_decl
        - Src:             'quickjs.c:24454,17'
          Dst:             emit_op
        - Src:             'quickjs.c:24456,17'
          Dst:             emit_op
        - Src:             'quickjs.c:24457,17'
          Dst:             emit_atom
        - Src:             'quickjs.c:24465,13'
          Dst:             emit_u8
        - Src:             'quickjs.c:24469,17'
          Dst:             emit_op
        - Src:             'quickjs.c:24471,17'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:24473,17'
          Dst:             js_parse_assign_expr
        - Src:             'quickjs.c:24476,17'
          Dst:             set_object_name_computed
        - Src:             'quickjs.c:24477,17'
          Dst:             emit_op
        - Src:             'quickjs.c:24478,17'
          Dst:             emit_op
        - Src:             'quickjs.c:24481,21'
          Dst:             js_parse_error
        - Src:             'quickjs.c:24484,17'
          Dst:             emit_op
        - Src:             'quickjs.c:24487,17'
          Dst:             set_object_name
        - Src:             'quickjs.c:24488,17'
          Dst:             emit_op
        - Src:             'quickjs.c:24489,17'
          Dst:             emit_atom
        - Src:             'quickjs.c:24492,9'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:24497,13'
          Dst:             next_token
        - Src:             'quickjs.c:24500,9'
          Dst:             js_parse_expect
        - Src:             'quickjs.c:24504,5'
          Dst:             JS_FreeAtom
    - functionName:    js_parse_array_literal
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25211
      functionLinenumberEnd: 25334
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         72
      ICount:          300
      EdgeCount:       101
      CyclomaticComplexity: 31
      functionsReached:
        - __JS_AtomFromUInt32
        - emit_atom
        - emit_op
        - emit_u16
        - emit_u32
        - js_parse_assign_expr
        - js_parse_expect
        - next_token
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:25215,9'
          Dst:             next_token
        - Src:             'quickjs.c:25222,13'
          Dst:             js_parse_assign_expr
        - Src:             'quickjs.c:25227,17'
          Dst:             next_token
        - Src:             'quickjs.c:25233,5'
          Dst:             emit_op
        - Src:             'quickjs.c:25234,5'
          Dst:             emit_u16
        - Src:             'quickjs.c:25243,17'
          Dst:             js_parse_assign_expr
        - Src:             'quickjs.c:25245,13'
          Dst:             emit_op
        - Src:             'quickjs.c:25246,25'
          Dst:             __JS_AtomFromUInt32
        - Src:             'quickjs.c:25246,13'
          Dst:             emit_u32
        - Src:             'quickjs.c:25252,17'
          Dst:             next_token
        - Src:             'quickjs.c:25260,13'
          Dst:             emit_op
        - Src:             'quickjs.c:25261,13'
          Dst:             emit_op
        - Src:             'quickjs.c:25262,13'
          Dst:             emit_u32
        - Src:             'quickjs.c:25263,13'
          Dst:             emit_op
        - Src:             'quickjs.c:25264,13'
          Dst:             emit_atom
        - Src:             'quickjs.c:25270,5'
          Dst:             emit_op
        - Src:             'quickjs.c:25271,5'
          Dst:             emit_u32
        - Src:             'quickjs.c:25276,17'
          Dst:             next_token
        - Src:             'quickjs.c:25278,17'
          Dst:             js_parse_assign_expr
        - Src:             'quickjs.c:25310,21'
          Dst:             js_parse_assign_expr
        - Src:             'quickjs.c:25313,17'
          Dst:             emit_op
        - Src:             'quickjs.c:0,0'
          Dst:             emit_op
        - Src:             'quickjs.c:25320,13'
          Dst:             next_token
        - Src:             'quickjs.c:25326,9'
          Dst:             emit_op
        - Src:             'quickjs.c:25327,9'
          Dst:             emit_op
        - Src:             'quickjs.c:25328,9'
          Dst:             emit_atom
        - Src:             'quickjs.c:25330,9'
          Dst:             emit_op
        - Src:             'quickjs.c:25333,12'
          Dst:             js_parse_expect
    - functionName:    has_with_scope
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25338
      functionLinenumberEnd: 25355
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          76
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    optional_chain_test
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26240
      functionLinenumberEnd: 26253
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - emit_goto
        - emit_label
        - emit_op
        - new_label
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:26243,37'
          Dst:             new_label
        - Src:             'quickjs.c:26245,5'
          Dst:             emit_op
        - Src:             'quickjs.c:26246,5'
          Dst:             emit_op
        - Src:             'quickjs.c:26247,18'
          Dst:             emit_goto
        - Src:             'quickjs.c:26249,9'
          Dst:             emit_op
        - Src:             'quickjs.c:26250,5'
          Dst:             emit_op
        - Src:             'quickjs.c:26251,5'
          Dst:             emit_goto
        - Src:             'quickjs.c:26252,5'
          Dst:             emit_label
    - functionName:    emit_label_raw
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23348
      functionLinenumberEnd: 23352
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - emit_u32
        - emit_u8
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23349,5'
          Dst:             emit_u8
        - Src:             'quickjs.c:23350,5'
          Dst:             emit_u32
    - functionName:    seal_template_obj
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23900
      functionLinenumberEnd: 23913
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          81
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - get_shape_prop
        - js_update_property_flags
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23905,11'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:23907,13'
          Dst:             js_update_property_flags
    - functionName:    is_regexp_allowed
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24185
      functionLinenumberEnd: 24204
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          64
      EdgeCount:       30
      CyclomaticComplexity: 16
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs.c:24186,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    simple_next_token
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23095
      functionLinenumberEnd: 23177
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         81
      ICount:          324
      EdgeCount:       107
      CyclomaticComplexity: 28
      functionsReached:
        - lre_is_space
        - lre_js_is_ident_first
        - lre_parse_escape
        - match_identifier
        - unicode_from_utf8
      functionUses:    3
      BranchProfiles:
        - Branch String:   'quickjs.c:23102,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:23138,17'
          Dst:             match_identifier
        - Src:             'quickjs.c:23140,17'
          Dst:             match_identifier
        - Src:             'quickjs.c:23146,17'
          Dst:             match_identifier
        - Src:             'quickjs.c:23150,17'
          Dst:             match_identifier
        - Src:             'quickjs.c:23154,17'
          Dst:             match_identifier
        - Src:             'quickjs.c:23159,43'
          Dst:             lre_parse_escape
        - Src:             'quickjs.c:23159,21'
          Dst:             lre_js_is_ident_first
        - Src:             'quickjs.c:23165,21'
          Dst:             unicode_from_utf8
        - Src:             'quickjs.c:23169,17'
          Dst:             lre_is_space
        - Src:             'quickjs.c:23171,17'
          Dst:             lre_js_is_ident_first
    - functionName:    match_identifier
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23071
      functionLinenumberEnd: 23081
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          56
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - lre_js_is_ident_next
        - unicode_from_utf8
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23079,13'
          Dst:             unicode_from_utf8
        - Src:             'quickjs.c:23080,13'
          Dst:             lre_js_is_ident_next
    - functionName:    js_parse_destructuring_var
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25739
      functionLinenumberEnd: 25758
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          100
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - JS_DupAtom
        - JS_FreeAtom
        - js_parse_check_duplicate_parameter
        - js_parse_error
        - next_token
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:25745,9'
          Dst:             js_parse_error
        - Src:             'quickjs.c:25748,12'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:25749,19'
          Dst:             js_parse_check_duplicate_parameter
        - Src:             'quickjs.c:25751,9'
          Dst:             next_token
        - Src:             'quickjs.c:25756,5'
          Dst:             JS_FreeAtom
    - functionName:    js_emit_spread_code
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25675
      functionLinenumberEnd: 25698
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - emit_goto
        - emit_label
        - emit_op
        - emit_u16
        - emit_u32
        - emit_u8
        - new_label
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:25682,5'
          Dst:             emit_op
        - Src:             'quickjs.c:25683,5'
          Dst:             emit_u16
        - Src:             'quickjs.c:25684,5'
          Dst:             emit_op
        - Src:             'quickjs.c:25685,5'
          Dst:             emit_u32
        - Src:             'quickjs.c:25686,37'
          Dst:             new_label
        - Src:             'quickjs.c:25686,5'
          Dst:             emit_label
        - Src:             'quickjs.c:25687,5'
          Dst:             emit_op
        - Src:             'quickjs.c:25688,5'
          Dst:             emit_u8
        - Src:             'quickjs.c:25689,23'
          Dst:             emit_goto
        - Src:             'quickjs.c:25691,5'
          Dst:             emit_op
        - Src:             'quickjs.c:25692,5'
          Dst:             emit_op
        - Src:             'quickjs.c:25693,5'
          Dst:             emit_goto
        - Src:             'quickjs.c:25694,5'
          Dst:             emit_label
        - Src:             'quickjs.c:25696,5'
          Dst:             emit_op
        - Src:             'quickjs.c:25697,5'
          Dst:             emit_op
    - functionName:    set_closure_from_var
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33183
      functionLinenumberEnd: 33190
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          43
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupAtom
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:33189,20'
          Dst:             JS_DupAtom
    - functionName:    js_create_function
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35439
      functionLinenumberEnd: 35695
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         173
      ICount:          1171
      EdgeCount:       235
      CyclomaticComplexity: 64
      functionsReached:
        - JS_DupContext
        - JS_FreeAtom
        - JS_IsException
        - __assert_fail
        - add_eval_variables
        - add_gc_object
        - add_global_variables
        - compute_stack_size
        - dbuf_free
        - js_create_function
        - js_free
        - js_free_function_def
        - js_mallocz
        - js_realloc
        - list_del
        - resolve_labels
        - resolve_variables
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:35479,9'
          Dst:             add_eval_variables
        - Src:             'quickjs.c:35483,13'
          Dst:             add_global_variables
        - Src:             'quickjs.c:35494,20'
          Dst:             js_create_function
        - Src:             'quickjs.c:35495,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:35498,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:35514,9'
          Dst:             resolve_variables
        - Src:             'quickjs.c:35529,9'
          Dst:             resolve_labels
        - Src:             'quickjs.c:35532,9'
          Dst:             compute_stack_size
        - Src:             'quickjs.c:35549,9'
          Dst:             js_mallocz
        - Src:             'quickjs.c:35557,5'
          Dst:             js_free
        - Src:             'quickjs.c:35569,17'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:35587,17'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:35604,9'
          Dst:             js_free
        - Src:             'quickjs.c:35605,9'
          Dst:             js_free
        - Src:             'quickjs.c:35612,5'
          Dst:             js_free
        - Src:             'quickjs.c:35618,9'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:35619,9'
          Dst:             dbuf_free
        - Src:             'quickjs.c:35630,32'
          Dst:             js_realloc
        - Src:             'quickjs.c:35638,9'
          Dst:             js_free
        - Src:             'quickjs.c:35651,21'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:35659,5'
          Dst:             js_free
        - Src:             'quickjs.c:35675,16'
          Dst:             JS_DupContext
        - Src:             'quickjs.c:35677,5'
          Dst:             add_gc_object
        - Src:             'quickjs.c:35687,9'
          Dst:             list_del
        - Src:             'quickjs.c:35690,5'
          Dst:             js_free
        - Src:             'quickjs.c:35693,5'
          Dst:             js_free_function_def
    - functionName:    js_parse_program
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36493
      functionLinenumberEnd: 36542
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         28
      ICount:          138
      EdgeCount:       38
      CyclomaticComplexity: 12
      functionsReached:
        - add_var
        - emit_atom
        - emit_op
        - emit_return
        - emit_u16
        - js_parse_directives
        - js_parse_source_element
        - next_token
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:36497,9'
          Dst:             next_token
        - Src:             'quickjs.c:36500,9'
          Dst:             js_parse_directives
        - Src:             'quickjs.c:36509,34'
          Dst:             add_var
        - Src:             'quickjs.c:36515,13'
          Dst:             js_parse_source_element
        - Src:             'quickjs.c:36524,13'
          Dst:             emit_op
        - Src:             'quickjs.c:36525,13'
          Dst:             emit_op
        - Src:             'quickjs.c:36527,13'
          Dst:             emit_op
        - Src:             'quickjs.c:36528,13'
          Dst:             emit_u16
        - Src:             'quickjs.c:36530,13'
          Dst:             emit_op
        - Src:             'quickjs.c:36531,13'
          Dst:             emit_atom
        - Src:             'quickjs.c:36533,13'
          Dst:             emit_op
        - Src:             'quickjs.c:36534,13'
          Dst:             emit_u16
        - Src:             'quickjs.c:0,0'
          Dst:             emit_return
    - functionName:    add_closure_variables
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33196
      functionLinenumberEnd: 33277
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         54
      ICount:          341
      EdgeCount:       73
      CyclomaticComplexity: 21
      functionsReached:
        - JS_DupAtom
        - is_var_in_arg_scope
        - js_malloc
        - set_closure_from_var
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:33207,22'
          Dst:             js_malloc
        - Src:             'quickjs.c:33215,13'
          Dst:             set_closure_from_var
        - Src:             'quickjs.c:33230,28'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:33237,17'
          Dst:             set_closure_from_var
        - Src:             'quickjs.c:33244,35'
          Dst:             is_var_in_arg_scope
        - Src:             'quickjs.c:33246,17'
          Dst:             set_closure_from_var
        - Src:             'quickjs.c:33274,24'
          Dst:             JS_DupAtom
    - functionName:    JS_SetThisTimeValue
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54346
      functionLinenumberEnd: 54356
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          83
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_ThrowTypeError
        - __JS_NewFloat64
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:54350,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:54351,32'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:54352,20'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:54355,12'
          Dst:             JS_ThrowTypeError
    - functionName:    js_date_toJSON
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55358
      functionLinenumberEnd: 55392
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          94
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - JS_CallFree
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsFunction
        - JS_IsNumber
        - JS_ThrowTypeError
        - JS_ToFloat64
        - JS_ToObject
        - JS_ToPrimitive
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:55366,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:55367,10'
          Dst:             JS_ToPrimitive
        - Src:             'quickjs.c:55368,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55370,9'
          Dst:             JS_IsNumber
        - Src:             'quickjs.c:55371,13'
          Dst:             JS_ToFloat64
        - Src:             'quickjs.c:55378,14'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:55379,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55381,10'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:55382,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:55383,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:55386,10'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:55389,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:55390,5'
          Dst:             JS_FreeValue
    - functionName:    js_date_setYear
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55339
      functionLinenumberEnd: 55354
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          111
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - JS_ThisTimeValue
        - JS_ToFloat64
        - __JS_NewFloat64
        - set_date_field
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:55344,9'
          Dst:             JS_ThisTimeValue
        - Src:             'quickjs.c:55344,48'
          Dst:             JS_ToFloat64
        - Src:             'quickjs.c:55352,15'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:55353,12'
          Dst:             set_date_field
    - functionName:    JS_ThisTimeValue
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54335
      functionLinenumberEnd: 54343
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_IsNumber
        - JS_ThrowTypeError
        - JS_ToFloat64
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:54338,45'
          Dst:             JS_IsNumber
        - Src:             'quickjs.c:54339,20'
          Dst:             JS_ToFloat64
        - Src:             'quickjs.c:54341,5'
          Dst:             JS_ThrowTypeError
    - functionName:    set_date_field
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54551
      functionLinenumberEnd: 54584
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          124
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - JS_SetThisTimeValue
        - JS_ToFloat64
        - get_date_fields
        - min_int
        - set_date_fields
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:54562,11'
          Dst:             get_date_fields
        - Src:             'quickjs.c:54568,9'
          Dst:             min_int
        - Src:             'quickjs.c:54570,13'
          Dst:             JS_ToFloat64
        - Src:             'quickjs.c:54581,13'
          Dst:             set_date_fields
        - Src:             'quickjs.c:54583,12'
          Dst:             JS_SetThisTimeValue
    - functionName:    get_date_fields
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54396
      functionLinenumberEnd: 54445
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          198
      EdgeCount:       51
      CyclomaticComplexity: 17
      functionsReached:
        - JS_ThisTimeValue
        - days_in_year
        - getTimezoneOffset
        - math_mod
        - year_from_days
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:54400,9'
          Dst:             JS_ThisTimeValue
        - Src:             'quickjs.c:54410,19'
          Dst:             getTimezoneOffset
        - Src:             'quickjs.c:54416,9'
          Dst:             math_mod
        - Src:             'quickjs.c:54424,10'
          Dst:             math_mod
        - Src:             'quickjs.c:54425,9'
          Dst:             year_from_days
        - Src:             'quickjs.c:54430,19'
          Dst:             days_in_year
    - functionName:    set_date_fields
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54456
      functionLinenumberEnd: 54511
      functionDepth:   0
      returnType:      double
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         39
      ICount:          204
      EdgeCount:       53
      CyclomaticComplexity: 16
      functionsReached:
        - days_from_year
        - days_in_year
        - fmod
        - getTimezoneOffset
        - time_clip
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:54467,10'
          Dst:             fmod
        - Src:             'quickjs.c:54475,12'
          Dst:             days_from_year
        - Src:             'quickjs.c:54479,21'
          Dst:             days_in_year
        - Src:             'quickjs.c:54508,15'
          Dst:             getTimezoneOffset
        - Src:             'quickjs.c:54510,12'
          Dst:             time_clip
    - functionName:    days_from_year
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54358
      functionLinenumberEnd: 54360
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - floor_div
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:54359,31'
          Dst:             floor_div
        - Src:             'quickjs.c:54360,9'
          Dst:             floor_div
        - Src:             'quickjs.c:54360,36'
          Dst:             floor_div
    - functionName:    days_in_year
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54363
      functionLinenumberEnd: 54364
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getTimezoneOffset
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46759
      functionLinenumberEnd: 46810
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - localtime_r
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:46805,9'
          Dst:             localtime_r
    - functionName:    time_clip
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54447
      functionLinenumberEnd: 54452
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          23
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    localtime_r
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    floor_div
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54325
      functionLinenumberEnd: 54328
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    math_mod
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54319
      functionLinenumberEnd: 54322
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    year_from_days
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54368
      functionLinenumberEnd: 54387
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          41
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - days_from_year
        - days_in_year
        - floor_div
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:54370,9'
          Dst:             floor_div
        - Src:             'quickjs.c:54374,18'
          Dst:             days_from_year
        - Src:             'quickjs.c:54379,18'
          Dst:             days_in_year
    - functionName:    js_date_setTime
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55328
      functionLinenumberEnd: 55335
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          46
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_SetThisTimeValue
        - JS_ThisTimeValue
        - JS_ToFloat64
        - time_clip
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:55332,9'
          Dst:             JS_ThisTimeValue
        - Src:             'quickjs.c:55332,48'
          Dst:             JS_ToFloat64
        - Src:             'quickjs.c:55334,47'
          Dst:             time_clip
        - Src:             'quickjs.c:55334,12'
          Dst:             JS_SetThisTimeValue
    - functionName:    get_date_field
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54530
      functionLinenumberEnd: 54547
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          92
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - __JS_NewFloat64
        - get_date_fields
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:54537,11'
          Dst:             get_date_fields
        - Src:             'quickjs.c:54546,12'
          Dst:             __JS_NewFloat64
    - functionName:    js_date_getTimezoneOffset
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55302
      functionLinenumberEnd: 55313
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          41
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_ThisTimeValue
        - getTimezoneOffset
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:55306,9'
          Dst:             JS_ThisTimeValue
        - Src:             'quickjs.c:55312,33'
          Dst:             getTimezoneOffset
    - functionName:    js_date_Symbol_toPrimitive
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55270
      functionLinenumberEnd: 55298
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          79
      EdgeCount:       20
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeAtom
        - JS_IsObject
        - JS_IsString
        - JS_ThrowTypeError
        - JS_ThrowTypeErrorNotAnObject
        - JS_ToPrimitive
        - JS_ValueToAtom
      functionUses:    0
      BranchProfiles:
        - Branch String:   'quickjs.c:55285,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:55276,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:55277,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:55279,9'
          Dst:             JS_IsString
        - Src:             'quickjs.c:55280,16'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:55283,9'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:55295,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:55297,12'
          Dst:             JS_ToPrimitive
    - functionName:    js_date_getTime
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55317
      functionLinenumberEnd: 55324
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          65
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - JS_ThisTimeValue
        - __JS_NewFloat64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:55321,9'
          Dst:             JS_ThisTimeValue
        - Src:             'quickjs.c:55323,12'
          Dst:             __JS_NewFloat64
    - functionName:    js_Date_UTC
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54780
      functionLinenumberEnd: 54795
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          113
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - JS_ToFloat64
        - __JS_NewFloat64
        - set_date_fields_checked
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:54791,13'
          Dst:             JS_ToFloat64
        - Src:             'quickjs.c:54794,31'
          Dst:             set_date_fields_checked
        - Src:             'quickjs.c:54794,12'
          Dst:             __JS_NewFloat64
    - functionName:    set_date_fields_checked
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54514
      functionLinenumberEnd: 54526
      functionDepth:   0
      returnType:      double
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          111
      EdgeCount:       32
      CyclomaticComplexity: 11
      functionsReached:
        - set_date_fields
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:54525,12'
          Dst:             set_date_fields
    - functionName:    js_Date_now
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55263
      functionLinenumberEnd: 55265
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __JS_NewFloat64
        - date_now
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:55265,29'
          Dst:             date_now
        - Src:             'quickjs.c:55265,12'
          Dst:             __JS_NewFloat64
    - functionName:    date_now
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54701
      functionLinenumberEnd: 54705
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gettimeofday
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:54703,5'
          Dst:             gettimeofday
    - functionName:    gettimeofday
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    upper_ascii
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54881
      functionLinenumberEnd: 54882
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          24
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    find_abbrev
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54939
      functionLinenumberEnd: 54951
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          77
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - upper_ascii
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:0,0'
          Dst:             upper_ascii
        - Src:             'quickjs.c:54944,43'
          Dst:             upper_ascii
        - Src:             'quickjs.c:54944,17'
          Dst:             upper_ascii
        - Src:             'quickjs.c:54944,43'
          Dst:             upper_ascii
        - Src:             'quickjs.c:54944,17'
          Dst:             upper_ascii
        - Src:             'quickjs.c:54944,43'
          Dst:             upper_ascii
    - functionName:    string_skip_separators
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54817
      functionLinenumberEnd: 54821
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          38
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    string_get_tzabbr
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55051
      functionLinenumberEnd: 55059
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          166
      EdgeCount:       59
      CyclomaticComplexity: 20
      functionsReached:
        - string_match
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:55053,13'
          Dst:             string_match
        - Src:             'quickjs.c:55053,13'
          Dst:             string_match
        - Src:             'quickjs.c:55053,13'
          Dst:             string_match
        - Src:             'quickjs.c:55053,13'
          Dst:             string_match
        - Src:             'quickjs.c:55053,13'
          Dst:             string_match
        - Src:             'quickjs.c:55053,13'
          Dst:             string_match
        - Src:             'quickjs.c:55053,13'
          Dst:             string_match
        - Src:             'quickjs.c:55053,13'
          Dst:             string_match
        - Src:             'quickjs.c:55053,13'
          Dst:             string_match
        - Src:             'quickjs.c:55053,13'
          Dst:             string_match
        - Src:             'quickjs.c:55053,13'
          Dst:             string_match
        - Src:             'quickjs.c:55053,13'
          Dst:             string_match
        - Src:             'quickjs.c:55053,13'
          Dst:             string_match
        - Src:             'quickjs.c:55053,13'
          Dst:             string_match
        - Src:             'quickjs.c:55053,13'
          Dst:             string_match
        - Src:             'quickjs.c:55053,13'
          Dst:             string_match
        - Src:             'quickjs.c:55053,13'
          Dst:             string_match
        - Src:             'quickjs.c:55053,13'
          Dst:             string_match
    - functionName:    string_match
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54928
      functionLinenumberEnd: 54937
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          53
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - upper_ascii
      functionUses:    20
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:54931,13'
          Dst:             upper_ascii
        - Src:             'quickjs.c:54931,35'
          Dst:             upper_ascii
    - functionName:    string_skip_until
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54825
      functionLinenumberEnd: 54829
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strchr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:54827,13'
          Dst:             strchr
    - functionName:    strchr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    string_get_month
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54953
      functionLinenumberEnd: 54963
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - find_abbrev
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:54956,9'
          Dst:             find_abbrev
    - functionName:    string_skip_spaces
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54809
      functionLinenumberEnd: 54813
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          34
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    string_get_tzoffset
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54885
      functionLinenumberEnd: 54926
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          180
      EdgeCount:       59
      CyclomaticComplexity: 18
      functionsReached:
        - string_get_digits
        - string_skip_char
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:54891,14'
          Dst:             string_get_digits
        - Src:             'quickjs.c:54905,17'
          Dst:             string_skip_char
        - Src:             'quickjs.c:54907,22'
          Dst:             string_get_digits
    - functionName:    string_get_digits
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54835
      functionLinenumberEnd: 54854
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          66
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    string_skip_char
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54799
      functionLinenumberEnd: 54806
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          23
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    string_get_milliseconds
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54856
      functionLinenumberEnd: 54878
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          164
      EdgeCount:       39
      CyclomaticComplexity: 13
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_date_parse_otherstring
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55064
      functionLinenumberEnd: 55209
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         119
      ICount:          559
      EdgeCount:       163
      CyclomaticComplexity: 46
      functionsReached:
        - string_get_digits
        - string_get_milliseconds
        - string_get_month
        - string_get_tzabbr
        - string_get_tzoffset
        - string_match
        - string_skip_char
        - string_skip_separators
        - string_skip_spaces
        - string_skip_until
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs.c:55173,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:55081,12'
          Dst:             string_skip_spaces
        - Src:             'quickjs.c:55084,29'
          Dst:             string_get_tzoffset
        - Src:             'quickjs.c:55088,21'
          Dst:             string_get_digits
        - Src:             'quickjs.c:55099,13'
          Dst:             string_get_digits
        - Src:             'quickjs.c:55100,17'
          Dst:             string_skip_char
        - Src:             'quickjs.c:55103,22'
          Dst:             string_get_digits
        - Src:             'quickjs.c:55105,21'
          Dst:             string_skip_char
        - Src:             'quickjs.c:55106,26'
          Dst:             string_get_digits
        - Src:             'quickjs.c:55108,21'
          Dst:             string_get_milliseconds
        - Src:             'quickjs.c:55112,21'
          Dst:             string_get_tzoffset
        - Src:             'quickjs.c:55130,13'
          Dst:             string_get_month
        - Src:             'quickjs.c:55132,13'
          Dst:             string_skip_until
        - Src:             'quickjs.c:55134,25'
          Dst:             string_match
        - Src:             'quickjs.c:55081,12'
          Dst:             string_skip_spaces
        - Src:             'quickjs.c:55139,25'
          Dst:             string_match
        - Src:             'quickjs.c:55144,13'
          Dst:             string_get_tzabbr
        - Src:             'quickjs.c:55081,12'
          Dst:             string_skip_spaces
        - Src:             'quickjs.c:55166,13'
          Dst:             string_skip_until
        - Src:             'quickjs.c:55168,9'
          Dst:             string_skip_separators
        - Src:             'quickjs.c:55081,12'
          Dst:             string_skip_spaces
    - functionName:    js_date_parse_isostring
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54966
      functionLinenumberEnd: 55025
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          224
      EdgeCount:       68
      CyclomaticComplexity: 22
      functionsReached:
        - string_get_digits
        - string_get_milliseconds
        - string_get_tzoffset
        - string_skip_char
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:54979,14'
          Dst:             string_get_digits
        - Src:             'quickjs.c:54979,14'
          Dst:             string_get_digits
        - Src:             'quickjs.c:54987,14'
          Dst:             string_get_digits
        - Src:             'quickjs.c:54990,9'
          Dst:             string_skip_char
        - Src:             'quickjs.c:54991,14'
          Dst:             string_get_digits
        - Src:             'quickjs.c:54996,13'
          Dst:             string_skip_char
        - Src:             'quickjs.c:54997,18'
          Dst:             string_get_digits
        - Src:             'quickjs.c:55003,9'
          Dst:             string_skip_char
        - Src:             'quickjs.c:55005,14'
          Dst:             string_get_digits
        - Src:             'quickjs.c:55006,14'
          Dst:             string_skip_char
        - Src:             'quickjs.c:55007,14'
          Dst:             string_get_digits
        - Src:             'quickjs.c:55011,13'
          Dst:             string_skip_char
        - Src:             'quickjs.c:55012,18'
          Dst:             string_get_digits
        - Src:             'quickjs.c:55014,13'
          Dst:             string_get_milliseconds
        - Src:             'quickjs.c:55020,14'
          Dst:             string_get_tzoffset
    - functionName:    js_Date_parse
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55213
      functionLinenumberEnd: 55259
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         51
      ICount:          283
      EdgeCount:       68
      CyclomaticComplexity: 19
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_ToString
        - __JS_NewFloat64
        - js_date_parse_isostring
        - js_date_parse_otherstring
        - set_date_fields
        - string_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:55225,9'
          Dst:             JS_ToString
        - Src:             'quickjs.c:55226,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55232,13'
          Dst:             string_get
        - Src:             'quickjs.c:55238,9'
          Dst:             js_date_parse_isostring
        - Src:             'quickjs.c:55239,9'
          Dst:             js_date_parse_otherstring
        - Src:             'quickjs.c:55253,17'
          Dst:             set_date_fields
        - Src:             'quickjs.c:55254,18'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:55257,5'
          Dst:             JS_FreeValue
    - functionName:    js_async_generator_resolve_function
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21098
      functionLinenumberEnd: 21127
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          96
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - JS_DupValue
        - JS_GetOpaque
        - JS_Throw
        - __assert_fail
        - js_async_generator_reject
        - js_async_generator_resolve
        - js_async_generator_resume_next
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:21100,31'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:21107,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:21111,13'
          Dst:             js_async_generator_reject
        - Src:             'quickjs.c:21113,13'
          Dst:             js_async_generator_resolve
        - Src:             'quickjs.c:21119,27'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:21119,13'
          Dst:             JS_Throw
        - Src:             'quickjs.c:21122,47'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:21124,9'
          Dst:             js_async_generator_resume_next
    - functionName:    js_async_generator_reject
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20940
      functionLinenumberEnd: 20942
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_async_generator_resolve_or_reject
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20941,5'
          Dst:             js_async_generator_resolve_or_reject
    - functionName:    js_async_generator_resolve
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20929
      functionLinenumberEnd: 20935
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - js_async_generator_resolve_or_reject
        - js_create_iterator_result
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20931,45'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:20931,14'
          Dst:             js_create_iterator_result
        - Src:             'quickjs.c:20933,5'
          Dst:             js_async_generator_resolve_or_reject
        - Src:             'quickjs.c:20934,5'
          Dst:             JS_FreeValue
    - functionName:    js_async_generator_resume_next
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20994
      functionLinenumberEnd: 21092
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         51
      ICount:          287
      EdgeCount:       59
      CyclomaticComplexity: 10
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_GetException
        - JS_IsException
        - JS_Throw
        - __assert_fail
        - abort
        - async_func_resume
        - js_async_generator_await
        - js_async_generator_complete
        - js_async_generator_completed_return
        - js_async_generator_reject
        - js_async_generator_resolve
        - list_empty
      functionUses:    2
      BranchProfiles:
        - Branch String:   'quickjs.c:21002,9'
          Branch Sides:    []
        - Branch String:   'quickjs.c:21063,17'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:20999,13'
          Dst:             list_empty
        - Src:             'quickjs.c:21012,17'
          Dst:             js_async_generator_complete
        - Src:             'quickjs.c:21017,17'
          Dst:             js_async_generator_resolve
        - Src:             'quickjs.c:21020,17'
          Dst:             js_async_generator_completed_return
        - Src:             'quickjs.c:21022,17'
          Dst:             js_async_generator_reject
        - Src:             'quickjs.c:21027,21'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:21030,17'
          Dst:             JS_Throw
        - Src:             'quickjs.c:21044,24'
          Dst:             async_func_resume
        - Src:             'quickjs.c:21046,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:21047,29'
          Dst:             JS_GetException
        - Src:             'quickjs.c:21048,21'
          Dst:             js_async_generator_complete
        - Src:             'quickjs.c:21049,21'
          Dst:             js_async_generator_reject
        - Src:             'quickjs.c:21050,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:21053,21'
          Dst:             js_async_generator_complete
        - Src:             'quickjs.c:21054,21'
          Dst:             js_async_generator_resolve
        - Src:             'quickjs.c:21055,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:21059,17'
          Dst:             __assert_fail
        - Src:             'quickjs.c:21070,21'
          Dst:             js_async_generator_resolve
        - Src:             'quickjs.c:21071,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:21074,27'
          Dst:             js_async_generator_await
        - Src:             'quickjs.c:21075,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:21083,21'
          Dst:             abort
        - Src:             'quickjs.c:21044,24'
          Dst:             async_func_resume
        - Src:             'quickjs.c:21088,13'
          Dst:             abort
        - Src:             'quickjs.c:20999,13'
          Dst:             list_empty
    - functionName:    list_empty
      functionSourceFile: '/src/quickjs/./list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_async_generator_complete
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20946
      functionLinenumberEnd: 20952
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - async_func_free
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20949,9'
          Dst:             async_func_free
    - functionName:    js_async_generator_completed_return
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20957
      functionLinenumberEnd: 20990
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          103
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeValue
        - JS_GetException
        - JS_IsException
        - js_async_generator_resolve_function_create
        - js_promise_resolve
        - perform_promise_then
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20962,15'
          Dst:             js_promise_resolve
        - Src:             'quickjs.c:20966,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:20967,23'
          Dst:             JS_GetException
        - Src:             'quickjs.c:20968,19'
          Dst:             js_promise_resolve
        - Src:             'quickjs.c:20970,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20971,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:20974,9'
          Dst:             js_async_generator_resolve_function_create
        - Src:             'quickjs.c:20983,11'
          Dst:             perform_promise_then
        - Src:             'quickjs.c:20986,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20987,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:0,0'
          Dst:             JS_FreeValue
    - functionName:    js_async_generator_await
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20873
      functionLinenumberEnd: 20903
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          82
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - js_async_generator_resolve_function_create
        - js_promise_resolve
        - perform_promise_then
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20877,15'
          Dst:             js_promise_resolve
        - Src:             'quickjs.c:20879,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:20882,9'
          Dst:             js_async_generator_resolve_function_create
        - Src:             'quickjs.c:20892,11'
          Dst:             perform_promise_then
        - Src:             'quickjs.c:20895,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20897,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20897,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20884,9'
          Dst:             JS_FreeValue
    - functionName:    js_async_generator_resolve_function_create
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20853
      functionLinenumberEnd: 20868
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          55
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_NewCFunctionData
        - js_async_generator_resolve_function
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20858,16'
          Dst:             JS_NewCFunctionData
        - Src:             'quickjs.c:20858,16'
          Dst:             js_async_generator_resolve_function
        - Src:             'quickjs.c:20860,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:20862,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20858,16'
          Dst:             JS_NewCFunctionData
        - Src:             'quickjs.c:20858,16'
          Dst:             js_async_generator_resolve_function
        - Src:             'quickjs.c:20860,13'
          Dst:             JS_IsException
    - functionName:    js_create_iterator_result
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16386
      functionLinenumberEnd: 16404
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          57
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_DefinePropertyValue
        - JS_FreeValue
        - JS_IsException
        - JS_NewObject
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:16388,11'
          Dst:             JS_NewObject
        - Src:             'quickjs.c:16389,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:16390,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:16393,9'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:16397,9'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:16400,9'
          Dst:             JS_FreeValue
    - functionName:    js_async_generator_resolve_or_reject
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20909
      functionLinenumberEnd: 20923
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_Call
        - JS_FreeValue
        - js_free
        - list_del
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20914,5'
          Dst:             list_del
        - Src:             'quickjs.c:20915,11'
          Dst:             JS_Call
        - Src:             'quickjs.c:20917,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20918,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20919,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20920,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20921,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20922,5'
          Dst:             js_free
    - functionName:    js_async_generator_next
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21133
      functionLinenumberEnd: 21171
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          125
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_Call
        - JS_DupValue
        - JS_FreeValue
        - JS_GetException
        - JS_GetOpaque
        - JS_IsException
        - JS_NewPromiseCapability
        - JS_ThrowTypeError
        - js_async_generator_resume_next
        - js_mallocz
        - list_add_tail
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:21134,31'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:21138,15'
          Dst:             JS_NewPromiseCapability
        - Src:             'quickjs.c:21139,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:21143,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:21144,15'
          Dst:             JS_GetException
        - Src:             'quickjs.c:21145,16'
          Dst:             JS_Call
        - Src:             'quickjs.c:21147,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:21148,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:21149,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:21150,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:21153,11'
          Dst:             js_mallocz
        - Src:             'quickjs.c:21157,19'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:21158,20'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:21161,5'
          Dst:             list_add_tail
        - Src:             'quickjs.c:21163,9'
          Dst:             js_async_generator_resume_next
        - Src:             'quickjs.c:21167,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:21168,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:21169,5'
          Dst:             JS_FreeValue
    - functionName:    js_async_from_sync_iterator_close_wrap
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53776
      functionLinenumberEnd: 53779
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
        - JS_IteratorClose
        - JS_Throw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:53777,19'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:53777,5'
          Dst:             JS_Throw
        - Src:             'quickjs.c:53778,5'
          Dst:             JS_IteratorClose
    - functionName:    js_async_from_sync_iterator_unwrap
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53757
      functionLinenumberEnd: 53759
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
        - JS_ToBool
        - js_create_iterator_result
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:53758,43'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:53759,38'
          Dst:             JS_ToBool
        - Src:             'quickjs.c:53758,12'
          Dst:             js_create_iterator_result
    - functionName:    js_async_from_sync_iterator_close_wrap_func_create
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53783
      functionLinenumberEnd: 53784
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_NewCFunctionData
        - js_async_from_sync_iterator_close_wrap
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:53784,12'
          Dst:             JS_NewCFunctionData
        - Src:             'quickjs.c:53784,12'
          Dst:             js_async_from_sync_iterator_close_wrap
    - functionName:    js_async_from_sync_iterator_unwrap_func_create
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53764
      functionLinenumberEnd: 53770
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_NewCFunctionData
        - js_async_from_sync_iterator_unwrap
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:53768,12'
          Dst:             JS_NewCFunctionData
        - Src:             'quickjs.c:53768,12'
          Dst:             js_async_from_sync_iterator_unwrap
    - functionName:    js_async_from_sync_iterator_next
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53791
      functionLinenumberEnd: 53905
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         52
      ICount:          357
      EdgeCount:       72
      CyclomaticComplexity: 22
      functionsReached:
        - JS_Call
        - JS_DupValue
        - JS_FreeValue
        - JS_GetException
        - JS_GetOpaque
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsNull
        - JS_IsUndefined
        - JS_IteratorClose
        - JS_IteratorGetCompleteValue
        - JS_IteratorNext2
        - JS_NewPromiseCapability
        - JS_ThrowTypeError
        - js_async_from_sync_iterator_close_wrap_func_create
        - js_async_from_sync_iterator_unwrap_func_create
        - js_create_iterator_result
        - js_promise_resolve
        - perform_promise_then
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:53797,15'
          Dst:             JS_NewPromiseCapability
        - Src:             'quickjs.c:53798,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53800,9'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:53802,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:53807,18'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:53809,18'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:53812,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53814,13'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:53814,39'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:53816,54'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:53816,23'
          Dst:             js_create_iterator_result
        - Src:             'quickjs.c:53820,21'
          Dst:             JS_IteratorClose
        - Src:             'quickjs.c:53822,17'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:53827,13'
          Dst:             JS_IteratorNext2
        - Src:             'quickjs.c:53829,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53830,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53834,17'
          Dst:             JS_IteratorGetCompleteValue
        - Src:             'quickjs.c:53835,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53836,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53840,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53846,33'
          Dst:             js_promise_resolve
        - Src:             'quickjs.c:53848,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53850,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53852,17'
          Dst:             JS_IteratorClose
        - Src:             'quickjs.c:53855,19'
          Dst:             JS_GetException
        - Src:             'quickjs.c:53858,20'
          Dst:             JS_Call
        - Src:             'quickjs.c:53860,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53861,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53862,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53863,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53868,13'
          Dst:             js_async_from_sync_iterator_unwrap_func_create
        - Src:             'quickjs.c:53869,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53870,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53877,17'
          Dst:             js_async_from_sync_iterator_close_wrap_func_create
        - Src:             'quickjs.c:53878,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53879,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53880,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53884,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53885,15'
          Dst:             perform_promise_then
        - Src:             'quickjs.c:53888,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53889,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53890,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53891,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53892,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53894,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53900,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53901,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53902,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53903,5'
          Dst:             JS_FreeValue
    - functionName:    js_iterator_proto_iterator
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43709
      functionLinenumberEnd: 43710
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:43710,12'
          Dst:             JS_DupValue
    - functionName:    js_promise_finally_thrower
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53598
      functionLinenumberEnd: 53599
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
        - JS_Throw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:53599,26'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:53599,12'
          Dst:             JS_Throw
    - functionName:    js_promise_finally_value_thunk
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53591
      functionLinenumberEnd: 53592
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:53592,12'
          Dst:             JS_DupValue
    - functionName:    js_promise_then_finally_func
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53605
      functionLinenumberEnd: 53631
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          88
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_Call
        - JS_FreeValue
        - JS_InvokeFree
        - JS_IsException
        - JS_NewCFunctionData
        - js_promise_resolve
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:53610,11'
          Dst:             JS_Call
        - Src:             'quickjs.c:53611,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53613,15'
          Dst:             js_promise_resolve
        - Src:             'quickjs.c:53614,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53615,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:0,0'
          Dst:             JS_NewCFunctionData
        - Src:             'quickjs.c:53624,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53625,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53628,11'
          Dst:             JS_InvokeFree
        - Src:             'quickjs.c:53629,5'
          Dst:             JS_FreeValue
    - functionName:    js_promise_finally
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53635
      functionLinenumberEnd: 53666
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          118
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_Invoke
        - JS_IsException
        - JS_IsFunction
        - JS_NewCFunctionData
        - JS_SpeciesConstructor
        - js_promise_then_finally_func
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:53642,12'
          Dst:             JS_SpeciesConstructor
        - Src:             'quickjs.c:53643,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53645,10'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:53646,25'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:53647,25'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:53652,29'
          Dst:             JS_NewCFunctionData
        - Src:             'quickjs.c:53652,29'
          Dst:             js_promise_then_finally_func
        - Src:             'quickjs.c:53653,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53655,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53656,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53652,29'
          Dst:             JS_NewCFunctionData
        - Src:             'quickjs.c:53652,29'
          Dst:             js_promise_then_finally_func
        - Src:             'quickjs.c:53653,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53661,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53662,11'
          Dst:             JS_Invoke
        - Src:             'quickjs.c:53663,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53664,5'
          Dst:             JS_FreeValue
    - functionName:    js_promise_catch
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53581
      functionLinenumberEnd: 53586
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_Invoke
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:53585,12'
          Dst:             JS_Invoke
    - functionName:    js_aggregate_error_constructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40998
      functionLinenumberEnd: 41009
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_DefinePropertyValue
        - JS_DupValue
        - JS_IsException
        - JS_NewObjectProtoClass
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:41001,11'
          Dst:             JS_NewObjectProtoClass
        - Src:             'quickjs.c:41004,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41006,54'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:41006,5'
          Dst:             JS_DefinePropertyValue
    - functionName:    remainingElementsCount_add
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53190
      functionLinenumberEnd: 53204
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          52
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - JS_GetPropertyUint32
        - JS_IsException
        - JS_SetPropertyUint32
        - JS_ToInt32Free
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:53194,11'
          Dst:             JS_GetPropertyUint32
        - Src:             'quickjs.c:53195,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53197,9'
          Dst:             JS_ToInt32Free
        - Src:             'quickjs.c:53200,9'
          Dst:             JS_SetPropertyUint32
    - functionName:    js_promise_all_resolve_element
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53215
      functionLinenumberEnd: 53278
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          208
      EdgeCount:       46
      CyclomaticComplexity: 15
      functionsReached:
        - JS_Call
        - JS_DefinePropertyValue
        - JS_DefinePropertyValueUint32
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_NewObject
        - JS_ToBool
        - JS_ToInt32
        - js_aggregate_error_constructor
        - js_new_string8
        - remainingElementsCount_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:53218,26'
          Dst:             JS_ToBool
        - Src:             'quickjs.c:53225,9'
          Dst:             JS_ToInt32
        - Src:             'quickjs.c:53234,15'
          Dst:             JS_NewObject
        - Src:             'quickjs.c:53235,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53237,15'
          Dst:             js_new_string8
        - Src:             'quickjs.c:53238,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53240,13'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:53246,36'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:53244,13'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:53249,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53253,15'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:53255,9'
          Dst:             JS_DefinePropertyValueUint32
        - Src:             'quickjs.c:53259,15'
          Dst:             remainingElementsCount_add
        - Src:             'quickjs.c:53265,21'
          Dst:             js_aggregate_error_constructor
        - Src:             'quickjs.c:53266,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53268,19'
          Dst:             JS_Call
        - Src:             'quickjs.c:53269,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53271,19'
          Dst:             JS_Call
        - Src:             'quickjs.c:53273,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53275,9'
          Dst:             JS_FreeValue
    - functionName:    js_promise_withResolvers
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53126
      functionLinenumberEnd: 53157
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          112
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - JS_DefinePropertyValue
        - JS_FreeValue
        - JS_IsException
        - JS_IsObject
        - JS_NewObject
        - JS_ThrowTypeErrorNotAnObject
        - js_new_promise_capability
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:53128,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:53129,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:53130,22'
          Dst:             js_new_promise_capability
        - Src:             'quickjs.c:53131,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53133,11'
          Dst:             JS_NewObject
        - Src:             'quickjs.c:53134,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53136,9'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:53141,9'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:53146,9'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:53152,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53153,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53154,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53155,5'
          Dst:             JS_FreeValue
    - functionName:    js_promise_race
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53428
      functionLinenumberEnd: 53493
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          200
      EdgeCount:       41
      CyclomaticComplexity: 13
      functionsReached:
        - JS_Call
        - JS_FreeValue
        - JS_GetException
        - JS_GetIterator
        - JS_GetPropertyInternal
        - JS_InvokeFree
        - JS_IsException
        - JS_IsObject
        - JS_IteratorClose
        - JS_IteratorNext
        - JS_ThrowTypeErrorNotAnObject
        - check_exception_free
        - check_function
        - js_new_promise_capability
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:53434,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:53435,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:53436,22'
          Dst:             js_new_promise_capability
        - Src:             'quickjs.c:53437,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53439,23'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:53440,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53441,9'
          Dst:             check_function
        - Src:             'quickjs.c:53443,12'
          Dst:             JS_GetIterator
        - Src:             'quickjs.c:53444,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53447,17'
          Dst:             JS_GetException
        - Src:             'quickjs.c:53448,15'
          Dst:             JS_Call
        - Src:             'quickjs.c:53450,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53451,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53453,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53455,23'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:53456,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53462,20'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:53463,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53467,28'
          Dst:             JS_Call
        - Src:             'quickjs.c:53469,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53470,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53472,17'
          Dst:             JS_IteratorClose
        - Src:             'quickjs.c:53475,19'
          Dst:             JS_InvokeFree
        - Src:             'quickjs.c:53477,17'
          Dst:             check_exception_free
        - Src:             'quickjs.c:53482,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53483,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53484,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53485,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53486,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53490,5'
          Dst:             JS_FreeValue
    - functionName:    js_promise_try
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53161
      functionLinenumberEnd: 53185
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          102
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_Call
        - JS_FreeValue
        - JS_GetException
        - JS_IsException
        - JS_IsObject
        - JS_ThrowTypeErrorNotAnObject
        - js_new_promise_capability
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:53165,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:53166,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:53167,22'
          Dst:             js_new_promise_capability
        - Src:             'quickjs.c:53168,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53170,11'
          Dst:             JS_Call
        - Src:             'quickjs.c:53171,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53173,15'
          Dst:             JS_GetException
        - Src:             'quickjs.c:53175,12'
          Dst:             JS_Call
        - Src:             'quickjs.c:53176,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53177,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53178,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53179,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53180,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53183,5'
          Dst:             JS_FreeValue
    - functionName:    js_promise_all
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53283
      functionLinenumberEnd: 53424
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         62
      ICount:          418
      EdgeCount:       88
      CyclomaticComplexity: 28
      functionsReached:
        - JS_Call
        - JS_DefinePropertyValueUint32
        - JS_DupValue
        - JS_FreeValue
        - JS_GetException
        - JS_GetIterator
        - JS_GetPropertyInternal
        - JS_InvokeFree
        - JS_IsException
        - JS_IsObject
        - JS_IteratorClose
        - JS_IteratorNext
        - JS_NewArray
        - JS_NewCFunctionData
        - JS_ThrowTypeErrorNotAnObject
        - check_exception_free
        - check_function
        - js_aggregate_error_constructor
        - js_new_promise_capability
        - js_promise_all_resolve_element
        - remainingElementsCount_add
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:53292,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:53293,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:53294,22'
          Dst:             js_new_promise_capability
        - Src:             'quickjs.c:53295,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53297,23'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:53298,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53299,9'
          Dst:             check_function
        - Src:             'quickjs.c:53301,12'
          Dst:             JS_GetIterator
        - Src:             'quickjs.c:53302,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53305,17'
          Dst:             JS_GetException
        - Src:             'quickjs.c:53306,15'
          Dst:             JS_Call
        - Src:             'quickjs.c:53308,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53309,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53311,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53313,23'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:53314,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53316,18'
          Dst:             JS_NewArray
        - Src:             'quickjs.c:53317,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53319,31'
          Dst:             JS_NewArray
        - Src:             'quickjs.c:53320,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53323,13'
          Dst:             JS_DefinePropertyValueUint32
        - Src:             'quickjs.c:53332,20'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:53333,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53332,20'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:53333,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53337,28'
          Dst:             JS_Call
        - Src:             'quickjs.c:53339,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53340,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53342,17'
          Dst:             JS_IteratorClose
        - Src:             'quickjs.c:53351,17'
          Dst:             JS_NewCFunctionData
        - Src:             'quickjs.c:53351,17'
          Dst:             js_promise_all_resolve_element
        - Src:             'quickjs.c:53353,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53354,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53360,21'
          Dst:             JS_NewCFunctionData
        - Src:             'quickjs.c:53360,21'
          Dst:             js_promise_all_resolve_element
        - Src:             'quickjs.c:53362,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53363,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53367,21'
          Dst:             JS_DefinePropertyValueUint32
        - Src:             'quickjs.c:53371,35'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:53373,34'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:53376,17'
          Dst:             remainingElementsCount_add
        - Src:             'quickjs.c:53377,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53378,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53379,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53385,19'
          Dst:             JS_InvokeFree
        - Src:             'quickjs.c:53386,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53387,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53388,17'
          Dst:             check_exception_free
        - Src:             'quickjs.c:53393,19'
          Dst:             remainingElementsCount_add
        - Src:             'quickjs.c:53399,25'
          Dst:             js_aggregate_error_constructor
        - Src:             'quickjs.c:53400,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53402,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53405,19'
          Dst:             JS_Call
        - Src:             'quickjs.c:53407,17'
          Dst:             check_exception_free
        - Src:             'quickjs.c:53412,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53413,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53414,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53415,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53416,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53417,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53418,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53421,5'
          Dst:             JS_FreeValue
    - functionName:    js_promise_resolve_thenable_job
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52790
      functionLinenumberEnd: 52812
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          90
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - JS_Call
        - JS_FreeValue
        - JS_GetException
        - JS_IsException
        - __assert_fail
        - js_create_resolving_functions
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:52797,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:52801,9'
          Dst:             js_create_resolving_functions
        - Src:             'quickjs.c:52803,11'
          Dst:             JS_Call
        - Src:             'quickjs.c:52804,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52805,25'
          Dst:             JS_GetException
        - Src:             'quickjs.c:52806,15'
          Dst:             JS_Call
        - Src:             'quickjs.c:52807,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52809,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52810,5'
          Dst:             JS_FreeValue
    - functionName:    fulfill_or_reject_promise
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52742
      functionLinenumberEnd: 52780
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          149
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - JS_DupValue
        - JS_EnqueueJob
        - JS_GetOpaque
        - list_del
        - promise_reaction_data_free
        - promise_reaction_job
        - set_value
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:52743,24'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:52750,40'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:52750,5'
          Dst:             set_value
        - Src:             'quickjs.c:52770,9'
          Dst:             JS_EnqueueJob
        - Src:             'quickjs.c:52770,9'
          Dst:             promise_reaction_job
        - Src:             'quickjs.c:52771,9'
          Dst:             list_del
        - Src:             'quickjs.c:52772,9'
          Dst:             promise_reaction_data_free
        - Src:             'quickjs.c:52777,9'
          Dst:             list_del
        - Src:             'quickjs.c:52778,9'
          Dst:             promise_reaction_data_free
    - functionName:    reject_promise
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52784
      functionLinenumberEnd: 52786
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fulfill_or_reject_promise
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:52785,5'
          Dst:             fulfill_or_reject_promise
    - functionName:    js_async_generator_free
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20798
      functionLinenumberEnd: 20813
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          69
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeValueRT
        - async_func_free
        - js_free_rt
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20804,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:20805,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:20806,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:20807,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:20808,9'
          Dst:             js_free_rt
        - Src:             'quickjs.c:20811,9'
          Dst:             async_func_free
        - Src:             'quickjs.c:20812,5'
          Dst:             js_free_rt
    - functionName:    js_async_generator_mark
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20826
      functionLinenumberEnd: 20842
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          76
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - JS_GetOpaque
        - JS_MarkValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20827,31'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:20833,13'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:20834,13'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:20835,13'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:20836,13'
          Dst:             JS_MarkValue
    - functionName:    js_async_generator_finalizer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20816
      functionLinenumberEnd: 20822
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          23
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_GetOpaque
        - js_async_generator_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20817,31'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:20820,9'
          Dst:             js_async_generator_free
    - functionName:    js_async_from_sync_iterator_mark
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53718
      functionLinenumberEnd: 53725
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_GetOpaque
        - JS_MarkValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:53720,9'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:53722,9'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:53723,9'
          Dst:             JS_MarkValue
    - functionName:    js_async_from_sync_iterator_finalizer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53706
      functionLinenumberEnd: 53714
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeValueRT
        - JS_GetOpaque
        - js_free_rt
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:53708,9'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:53710,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:53711,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:53712,9'
          Dst:             js_free_rt
    - functionName:    js_async_function_resolve_mark
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20631
      functionLinenumberEnd: 20637
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_async_function_resolve_finalizer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20621
      functionLinenumberEnd: 20627
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          25
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - async_func_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20625,9'
          Dst:             async_func_free
    - functionName:    js_promise_resolve_function_mark
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52876
      functionLinenumberEnd: 52881
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_MarkValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:52879,9'
          Dst:             JS_MarkValue
    - functionName:    js_promise_resolve_function_finalizer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52865
      functionLinenumberEnd: 52872
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeValueRT
        - js_free_rt
        - js_promise_resolve_function_free_resolved
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:52868,9'
          Dst:             js_promise_resolve_function_free_resolved
        - Src:             'quickjs.c:52869,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:52870,9'
          Dst:             js_free_rt
    - functionName:    js_promise_mark
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52957
      functionLinenumberEnd: 52974
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          100
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - JS_GetOpaque
        - JS_MarkValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:52958,24'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:52968,13'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:52969,13'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:52970,13'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:52968,13'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:52969,13'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:52970,13'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:52973,5'
          Dst:             JS_MarkValue
    - functionName:    js_promise_finalizer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52937
      functionLinenumberEnd: 52953
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          73
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - JS_FreeValueRT
        - JS_GetOpaque
        - js_free_rt
        - promise_reaction_data_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:52938,24'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:52948,13'
          Dst:             promise_reaction_data_free
        - Src:             'quickjs.c:52948,13'
          Dst:             promise_reaction_data_free
        - Src:             'quickjs.c:52951,5'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:52952,5'
          Dst:             js_free_rt
    - functionName:    js_copy_set
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52019
      functionLinenumberEnd: 52047
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          87
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - JS_FreeValue
        - JS_GetOpaque
        - JS_GetOpaque2
        - JS_IsException
        - js_map_constructor
        - set_add_record
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:52025,9'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:52029,14'
          Dst:             js_map_constructor
        - Src:             'quickjs.c:52030,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52032,9'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:52040,14'
          Dst:             set_add_record
        - Src:             'quickjs.c:52045,5'
          Dst:             JS_FreeValue
    - functionName:    js_map_constructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51074
      functionLinenumberEnd: 51181
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         53
      ICount:          334
      EdgeCount:       73
      CyclomaticComplexity: 22
      functionsReached:
        - JS_Call
        - JS_FreeValue
        - JS_GetIterator
        - JS_GetPropertyInternal
        - JS_GetPropertyUint32
        - JS_IsException
        - JS_IsFunction
        - JS_IsNull
        - JS_IsObject
        - JS_IsUndefined
        - JS_IteratorClose
        - JS_IteratorNext
        - JS_SetOpaque
        - JS_ThrowTypeError
        - JS_ThrowTypeErrorNotAnObject
        - init_list_head
        - js_create_from_ctor
        - js_mallocz
        - list_add_tail
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51082,11'
          Dst:             js_create_from_ctor
        - Src:             'quickjs.c:51083,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:51085,9'
          Dst:             js_mallocz
        - Src:             'quickjs.c:51088,5'
          Dst:             init_list_head
        - Src:             'quickjs.c:51092,9'
          Dst:             list_add_tail
        - Src:             'quickjs.c:51094,5'
          Dst:             JS_SetOpaque
        - Src:             'quickjs.c:51097,21'
          Dst:             js_mallocz
        - Src:             'quickjs.c:51105,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:51105,34'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:51109,17'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:51110,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:51112,14'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:51113,13'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:51117,16'
          Dst:             JS_GetIterator
        - Src:             'quickjs.c:51118,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:51120,23'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:51121,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:51125,20'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:51126,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:51131,23'
          Dst:             JS_Call
        - Src:             'quickjs.c:51132,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:51133,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51141,22'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:51142,21'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:51145,23'
          Dst:             JS_GetPropertyUint32
        - Src:             'quickjs.c:51146,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:51148,25'
          Dst:             JS_GetPropertyUint32
        - Src:             'quickjs.c:51149,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:51153,23'
          Dst:             JS_Call
        - Src:             'quickjs.c:51154,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:51161,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51162,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51156,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51157,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51158,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51164,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51165,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51125,20'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:51126,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:51167,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51168,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51169,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51174,5'
          Dst:             JS_IteratorClose
        - Src:             'quickjs.c:51176,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51177,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51178,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51179,5'
          Dst:             JS_FreeValue
    - functionName:    set_add_record
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51360
      functionLinenumberEnd: 51367
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - map_add_record
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51362,10'
          Dst:             map_add_record
    - functionName:    map_add_record
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51333
      functionLinenumberEnd: 51356
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          74
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_DupValue
        - js_malloc
        - js_weakref_new
        - list_add_tail
        - map_hash_key
        - map_hash_resize
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51337,10'
          Dst:             js_malloc
        - Src:             'quickjs.c:51343,19'
          Dst:             js_weakref_new
        - Src:             'quickjs.c:51345,19'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:51347,9'
          Dst:             map_hash_key
        - Src:             'quickjs.c:51350,5'
          Dst:             list_add_tail
        - Src:             'quickjs.c:51353,9'
          Dst:             map_hash_resize
    - functionName:    map_hash_resize
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51300
      functionLinenumberEnd: 51329
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          107
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - js_realloc
        - js_weakref_is_live
        - map_hash_key
        - min_int
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51307,21'
          Dst:             min_int
        - Src:             'quickjs.c:51309,22'
          Dst:             js_realloc
        - Src:             'quickjs.c:51318,42'
          Dst:             js_weakref_is_live
        - Src:             'quickjs.c:51320,17'
          Dst:             map_hash_key
    - functionName:    js_map_iterator_next
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51883
      functionLinenumberEnd: 51943
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          170
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_GetOpaque
        - JS_GetOpaque2
        - JS_IsUndefined
        - __assert_fail
        - js_create_array
        - map_decref_record
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51889,10'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:51894,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:51896,9'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:51897,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:51903,9'
          Dst:             map_decref_record
        - Src:             'quickjs.c:51909,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51929,16'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:51938,20'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:51940,20'
          Dst:             js_create_array
    - functionName:    map_decref_record
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51394
      functionLinenumberEnd: 51401
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          38
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - js_free_rt
        - list_del
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51397,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:51398,9'
          Dst:             list_del
        - Src:             'quickjs.c:51399,9'
          Dst:             js_free_rt
    - functionName:    get_set_record
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51947
      functionLinenumberEnd: 52015
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          169
      EdgeCount:       48
      CyclomaticComplexity: 15
      functionsReached:
        - JS_FreeValue
        - JS_GetOpaque
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsFunction
        - JS_IsUndefined
        - JS_ThrowRangeError
        - JS_ThrowTypeError
        - JS_ToFloat64Free
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51952,9'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:51959,13'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:51960,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:51962,13'
          Dst:             JS_ToFloat64Free
        - Src:             'quickjs.c:51965,13'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:51975,13'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:51980,11'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:51981,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:51983,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:51984,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:51987,10'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:51988,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:51992,12'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:51993,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:51995,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:51996,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:51999,10'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:52000,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:52009,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52010,5'
          Dst:             JS_FreeValue
    - functionName:    js_set_union
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52450
      functionLinenumberEnd: 52497
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          168
      EdgeCount:       34
      CyclomaticComplexity: 11
      functionsReached:
        - JS_Call
        - JS_FreeValue
        - JS_GetOpaque2
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IteratorNext
        - get_set_record
        - js_copy_set
        - js_map_set
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:52456,9'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:52459,9'
          Dst:             get_set_record
        - Src:             'quickjs.c:52461,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52465,12'
          Dst:             JS_Call
        - Src:             'quickjs.c:52466,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52468,12'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:52469,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52472,14'
          Dst:             js_copy_set
        - Src:             'quickjs.c:52473,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52477,16'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:52478,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52482,14'
          Dst:             js_map_set
        - Src:             'quickjs.c:52483,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52484,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52486,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52477,16'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:52478,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52490,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52493,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52494,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52495,5'
          Dst:             JS_FreeValue
    - functionName:    js_map_set
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51437
      functionLinenumberEnd: 51461
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          115
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_GetOpaque2
        - JS_ThrowTypeError
        - js_weakref_is_target
        - map_add_record
        - map_find_record
        - map_normalize_key_const
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51438,21'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:51444,11'
          Dst:             map_normalize_key_const
        - Src:             'quickjs.c:51445,24'
          Dst:             js_weakref_is_target
        - Src:             'quickjs.c:51446,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:51451,10'
          Dst:             map_find_record
        - Src:             'quickjs.c:51453,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51455,14'
          Dst:             map_add_record
        - Src:             'quickjs.c:51459,17'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:51460,12'
          Dst:             JS_DupValue
    - functionName:    map_normalize_key_const
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51195
      functionLinenumberEnd: 51196
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - map_normalize_key
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51196,26'
          Dst:             map_normalize_key
    - functionName:    map_find_record
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51284
      functionLinenumberEnd: 51297
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          91
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - js_same_value_zero
        - js_weakref_is_live
        - map_hash_key
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51287,9'
          Dst:             map_hash_key
        - Src:             'quickjs.c:51289,42'
          Dst:             js_weakref_is_live
        - Src:             'quickjs.c:51292,17'
          Dst:             js_same_value_zero
    - functionName:    js_same_value_zero
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15519
      functionLinenumberEnd: 15521
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
        - js_strict_eq2
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:15521,26'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:15521,49'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:15520,12'
          Dst:             js_strict_eq2
    - functionName:    map_normalize_key
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51185
      functionLinenumberEnd: 51192
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_set_symmetricDifference
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52381
      functionLinenumberEnd: 52446
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          179
      EdgeCount:       42
      CyclomaticComplexity: 13
      functionsReached:
        - JS_Call
        - JS_FreeValue
        - JS_GetOpaque
        - JS_GetOpaque2
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IteratorNext
        - get_set_record
        - js_copy_set
        - map_delete_record
        - map_find_record
        - map_normalize_key
        - set_add_record
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:52389,9'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:52392,9'
          Dst:             get_set_record
        - Src:             'quickjs.c:52394,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52398,12'
          Dst:             JS_Call
        - Src:             'quickjs.c:52399,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52401,12'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:52402,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52404,14'
          Dst:             js_copy_set
        - Src:             'quickjs.c:52405,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52407,9'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:52409,16'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:52410,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52422,16'
          Dst:             map_normalize_key
        - Src:             'quickjs.c:52423,28'
          Dst:             map_find_record
        - Src:             'quickjs.c:52424,14'
          Dst:             map_find_record
        - Src:             'quickjs.c:52426,13'
          Dst:             map_delete_record
        - Src:             'quickjs.c:52431,18'
          Dst:             set_add_record
        - Src:             'quickjs.c:52432,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:0,0'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52409,16'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:52410,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52439,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52442,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52443,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52444,5'
          Dst:             JS_FreeValue
    - functionName:    map_delete_record
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51482
      functionLinenumberEnd: 51508
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          101
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - js_same_value_zero
        - js_weakref_is_live
        - map_delete_record_internal
        - map_hash_key
        - map_normalize_key_const
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51486,11'
          Dst:             map_normalize_key_const
        - Src:             'quickjs.c:51488,9'
          Dst:             map_hash_key
        - Src:             'quickjs.c:51494,42'
          Dst:             js_weakref_is_live
        - Src:             'quickjs.c:51497,17'
          Dst:             js_same_value_zero
        - Src:             'quickjs.c:51506,5'
          Dst:             map_delete_record_internal
    - functionName:    js_set_difference
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52308
      functionLinenumberEnd: 52377
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          257
      EdgeCount:       54
      CyclomaticComplexity: 17
      functionsReached:
        - JS_Call
        - JS_FreeValue
        - JS_GetOpaque
        - JS_GetOpaque2
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IteratorNext
        - JS_ToBoolFree
        - get_set_record
        - js_copy_set
        - js_create_map_iterator
        - js_map_iterator_next
        - map_delete_record
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:52318,9'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:52321,9'
          Dst:             get_set_record
        - Src:             'quickjs.c:52324,14'
          Dst:             js_copy_set
        - Src:             'quickjs.c:52325,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52327,9'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:52330,16'
          Dst:             js_create_map_iterator
        - Src:             'quickjs.c:52331,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52334,20'
          Dst:             js_map_iterator_next
        - Src:             'quickjs.c:52335,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52339,18'
          Dst:             JS_Call
        - Src:             'quickjs.c:52340,18'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:52342,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52346,17'
          Dst:             map_delete_record
        - Src:             'quickjs.c:52348,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52334,20'
          Dst:             js_map_iterator_next
        - Src:             'quickjs.c:52335,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52351,16'
          Dst:             JS_Call
        - Src:             'quickjs.c:52352,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52354,16'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:52355,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52358,20'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:52359,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52363,13'
          Dst:             map_delete_record
        - Src:             'quickjs.c:52364,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52358,20'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:52359,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52369,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52372,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52373,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52374,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52375,5'
          Dst:             JS_FreeValue
    - functionName:    js_create_map_iterator
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51852
      functionLinenumberEnd: 51878
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          64
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_GetOpaque2
        - JS_IsException
        - JS_NewObjectClass
        - JS_SetOpaque
        - js_malloc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51860,9'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:51863,16'
          Dst:             JS_NewObjectClass
        - Src:             'quickjs.c:51864,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:51866,10'
          Dst:             js_malloc
        - Src:             'quickjs.c:51868,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51871,15'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:51874,5'
          Dst:             JS_SetOpaque
    - functionName:    js_set_intersection
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52217
      functionLinenumberEnd: 52304
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         53
      ICount:          324
      EdgeCount:       74
      CyclomaticComplexity: 23
      functionsReached:
        - JS_Call
        - JS_FreeValue
        - JS_GetOpaque
        - JS_GetOpaque2
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IteratorNext
        - JS_ToBoolFree
        - get_set_record
        - js_create_map_iterator
        - js_map_constructor
        - js_map_iterator_next
        - map_find_record
        - map_normalize_key
        - set_add_record
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:52227,9'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:52230,9'
          Dst:             get_set_record
        - Src:             'quickjs.c:52233,16'
          Dst:             JS_Call
        - Src:             'quickjs.c:52234,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52236,16'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:52237,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52239,18'
          Dst:             js_map_constructor
        - Src:             'quickjs.c:52240,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52242,13'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:52244,20'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:52245,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52249,20'
          Dst:             map_normalize_key
        - Src:             'quickjs.c:52250,18'
          Dst:             map_find_record
        - Src:             'quickjs.c:52252,24'
          Dst:             map_find_record
        - Src:             'quickjs.c:52255,22'
          Dst:             set_add_record
        - Src:             'quickjs.c:52256,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:0,0'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52244,20'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:52245,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52262,16'
          Dst:             js_create_map_iterator
        - Src:             'quickjs.c:52263,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52265,18'
          Dst:             js_map_constructor
        - Src:             'quickjs.c:52266,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52268,13'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:52270,20'
          Dst:             js_map_iterator_next
        - Src:             'quickjs.c:52271,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52275,18'
          Dst:             JS_Call
        - Src:             'quickjs.c:52276,18'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:52278,24'
          Dst:             map_normalize_key
        - Src:             'quickjs.c:52279,21'
          Dst:             map_find_record
        - Src:             'quickjs.c:52280,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52282,26'
          Dst:             set_add_record
        - Src:             'quickjs.c:52283,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52288,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52270,20'
          Dst:             js_map_iterator_next
        - Src:             'quickjs.c:52271,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52296,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52299,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52300,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52301,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52302,5'
          Dst:             JS_FreeValue
    - functionName:    js_set_isSupersetOf
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52166
      functionLinenumberEnd: 52213
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          137
      EdgeCount:       30
      CyclomaticComplexity: 10
      functionsReached:
        - JS_Call
        - JS_FreeValue
        - JS_GetOpaque2
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IteratorClose
        - JS_IteratorNext
        - get_set_record
        - map_find_record
        - map_normalize_key
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:52176,9'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:52179,9'
          Dst:             get_set_record
        - Src:             'quickjs.c:52184,12'
          Dst:             JS_Call
        - Src:             'quickjs.c:52185,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52187,12'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:52188,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52192,16'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:52193,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52197,16'
          Dst:             map_normalize_key
        - Src:             'quickjs.c:52198,26'
          Dst:             map_find_record
        - Src:             'quickjs.c:52199,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52201,13'
          Dst:             JS_IteratorClose
        - Src:             'quickjs.c:52208,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52209,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52210,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52211,5'
          Dst:             JS_FreeValue
    - functionName:    js_set_isSubsetOf
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52119
      functionLinenumberEnd: 52162
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          137
      EdgeCount:       30
      CyclomaticComplexity: 10
      functionsReached:
        - JS_Call
        - JS_FreeValue
        - JS_GetOpaque2
        - JS_IsException
        - JS_ToBoolFree
        - get_set_record
        - js_create_map_iterator
        - js_map_iterator_next
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:52129,9'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:52132,9'
          Dst:             get_set_record
        - Src:             'quickjs.c:52137,12'
          Dst:             js_create_map_iterator
        - Src:             'quickjs.c:52138,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52142,16'
          Dst:             js_map_iterator_next
        - Src:             'quickjs.c:52143,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52147,14'
          Dst:             JS_Call
        - Src:             'quickjs.c:52148,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52149,14'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:52157,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52158,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52159,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52160,5'
          Dst:             JS_FreeValue
    - functionName:    js_set_isDisjointFrom
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52051
      functionLinenumberEnd: 52115
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          203
      EdgeCount:       46
      CyclomaticComplexity: 15
      functionsReached:
        - JS_Call
        - JS_FreeValue
        - JS_GetOpaque2
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IteratorClose
        - JS_IteratorNext
        - JS_ToBoolFree
        - get_set_record
        - js_create_map_iterator
        - js_map_iterator_next
        - map_find_record
        - map_normalize_key
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:52062,9'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:52065,9'
          Dst:             get_set_record
        - Src:             'quickjs.c:52068,16'
          Dst:             js_create_map_iterator
        - Src:             'quickjs.c:52069,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52073,20'
          Dst:             js_map_iterator_next
        - Src:             'quickjs.c:52074,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52078,18'
          Dst:             JS_Call
        - Src:             'quickjs.c:52079,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52080,18'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:52086,16'
          Dst:             JS_Call
        - Src:             'quickjs.c:52087,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52089,16'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:52090,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52094,20'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:52095,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52099,20'
          Dst:             map_normalize_key
        - Src:             'quickjs.c:52100,30'
          Dst:             map_find_record
        - Src:             'quickjs.c:52101,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52103,17'
          Dst:             JS_IteratorClose
        - Src:             'quickjs.c:52110,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52111,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52112,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52113,5'
          Dst:             JS_FreeValue
    - functionName:    js_map_forEach
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51600
      functionLinenumberEnd: 51644
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          172
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - JS_Call
        - JS_DupValue
        - JS_FreeValue
        - JS_GetOpaque2
        - JS_IsException
        - check_function
        - map_decref_record
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51601,21'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:51614,9'
          Dst:             check_function
        - Src:             'quickjs.c:51624,23'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:51628,27'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:51630,19'
          Dst:             JS_Call
        - Src:             'quickjs.c:51631,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51633,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51635,13'
          Dst:             map_decref_record
        - Src:             'quickjs.c:51636,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:51638,13'
          Dst:             JS_FreeValue
    - functionName:    js_map_get_size
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51591
      functionLinenumberEnd: 51596
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          40
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_GetOpaque2
        - __JS_NewFloat64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51592,21'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:51595,12'
          Dst:             __JS_NewFloat64
    - functionName:    js_map_clear
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51572
      functionLinenumberEnd: 51588
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          55
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_GetOpaque2
        - map_delete_record_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51573,21'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:51585,9'
          Dst:             map_delete_record_internal
    - functionName:    js_map_delete
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51563
      functionLinenumberEnd: 51568
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_GetOpaque2
        - map_delete_record
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51564,21'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:51567,12'
          Dst:             map_delete_record
    - functionName:    js_map_has
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51549
      functionLinenumberEnd: 51559
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_GetOpaque2
        - map_find_record
        - map_normalize_key_const
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51550,21'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:51556,11'
          Dst:             map_normalize_key_const
        - Src:             'quickjs.c:51557,10'
          Dst:             map_find_record
    - functionName:    js_map_getOrInsert
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51512
      functionLinenumberEnd: 51545
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          157
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - JS_Call
        - JS_DupValue
        - JS_FreeValue
        - JS_GetOpaque2
        - JS_IsException
        - JS_IsFunction
        - JS_ThrowTypeError
        - js_weakref_is_target
        - map_add_record
        - map_delete_record
        - map_find_record
        - map_normalize_key_const
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51515,21'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:51522,22'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:51523,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:51524,11'
          Dst:             map_normalize_key_const
        - Src:             'quickjs.c:51525,24'
          Dst:             js_weakref_is_target
        - Src:             'quickjs.c:51526,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:51527,10'
          Dst:             map_find_record
        - Src:             'quickjs.c:51530,21'
          Dst:             JS_Call
        - Src:             'quickjs.c:51531,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:51533,13'
          Dst:             map_delete_record
        - Src:             'quickjs.c:51535,21'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:51537,14'
          Dst:             map_add_record
        - Src:             'quickjs.c:51539,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51544,12'
          Dst:             JS_DupValue
    - functionName:    js_map_get
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51465
      functionLinenumberEnd: 51478
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_DupValue
        - JS_GetOpaque2
        - map_find_record
        - map_normalize_key_const
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51466,21'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:51472,11'
          Dst:             map_normalize_key_const
        - Src:             'quickjs.c:51473,10'
          Dst:             map_find_record
        - Src:             'quickjs.c:51477,16'
          Dst:             JS_DupValue
    - functionName:    js_object_groupBy
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51648
      functionLinenumberEnd: 51761
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          339
      EdgeCount:       69
      CyclomaticComplexity: 21
      functionsReached:
        - JS_Call
        - JS_DefinePropertyValue
        - JS_DupValue
        - JS_FreeAtom
        - JS_FreeValue
        - JS_GetIterator
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsUndefined
        - JS_IteratorClose
        - JS_IteratorNext
        - JS_NewArray
        - JS_NewObjectProto
        - JS_ThrowTypeError
        - JS_ValueToAtom
        - __JS_NewFloat64
        - check_function
        - js_array_push
        - js_map_constructor
        - js_map_get
        - js_map_set
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51657,9'
          Dst:             check_function
        - Src:             'quickjs.c:51660,12'
          Dst:             JS_GetIterator
        - Src:             'quickjs.c:51661,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:51670,12'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:51671,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:51675,18'
          Dst:             js_map_constructor
        - Src:             'quickjs.c:51677,18'
          Dst:             JS_NewObjectProto
        - Src:             'quickjs.c:51679,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:51684,13'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:51687,13'
          Dst:             JS_IteratorNext
        - Src:             'quickjs.c:51688,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:51694,19'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:51695,15'
          Dst:             JS_Call
        - Src:             'quickjs.c:51696,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:51700,20'
          Dst:             js_map_get
        - Src:             'quickjs.c:51702,24'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:51703,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51707,20'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:51709,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:51712,13'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:51713,20'
          Dst:             JS_NewArray
        - Src:             'quickjs.c:51714,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:51719,23'
          Dst:             js_map_set
        - Src:             'quickjs.c:51720,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:51722,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51724,24'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:51725,21'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:51731,15'
          Dst:             js_array_push
        - Src:             'quickjs.c:51732,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:51736,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51737,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51738,9'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:51739,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51746,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51747,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51751,5'
          Dst:             JS_IteratorClose
        - Src:             'quickjs.c:51753,5'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:51754,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51755,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51756,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51757,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51758,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:51759,5'
          Dst:             JS_FreeValue
    - functionName:    js_array_push
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42148
      functionLinenumberEnd: 42204
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         67
      ICount:          327
      EdgeCount:       93
      CyclomaticComplexity: 28
      functionsReached:
        - JS_CopySubArray
        - JS_DupValue
        - JS_FreeValue
        - JS_SetProperty
        - JS_SetPropertyInt64
        - JS_ThrowTypeError
        - JS_ToObject
        - __JS_NewFloat64
        - expand_fast_array
        - get_shape_prop
        - js_get_length64
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:42155,13'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:42165,25'
          Dst:             expand_fast_array
        - Src:             'quickjs.c:42169,65'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:42176,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:42177,9'
          Dst:             js_get_length64
        - Src:             'quickjs.c:42181,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:42186,13'
          Dst:             JS_CopySubArray
        - Src:             'quickjs.c:42192,33'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:42191,13'
          Dst:             JS_SetPropertyInt64
        - Src:             'quickjs.c:42195,50'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:42195,9'
          Dst:             JS_SetProperty
        - Src:             'quickjs.c:42198,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:42199,12'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:42202,5'
          Dst:             JS_FreeValue
    - functionName:    js_proxy_revoke
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50788
      functionLinenumberEnd: 50798
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeValue
        - JS_GetOpaque
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:50789,22'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:50794,9'
          Dst:             JS_FreeValue
    - functionName:    js_proxy_revoke_constructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50802
      functionLinenumberEnd: 50803
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_NewCFunctionData
        - js_proxy_revoke
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:50803,12'
          Dst:             JS_NewCFunctionData
        - Src:             'quickjs.c:50803,12'
          Dst:             js_proxy_revoke
    - functionName:    js_proxy_revocable
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50808
      functionLinenumberEnd: 50828
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_DefinePropertyValue
        - JS_FreeValue
        - JS_IsException
        - JS_NewObject
        - js_proxy_constructor
        - js_proxy_revoke_constructor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:50811,17'
          Dst:             js_proxy_constructor
        - Src:             'quickjs.c:50812,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50814,18'
          Dst:             js_proxy_revoke_constructor
        - Src:             'quickjs.c:50815,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50817,11'
          Dst:             JS_NewObject
        - Src:             'quickjs.c:50818,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50821,5'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:50822,5'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:50825,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50826,5'
          Dst:             JS_FreeValue
    - functionName:    js_proxy_constructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50757
      functionLinenumberEnd: 50783
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          90
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_IsConstructor
        - JS_IsException
        - JS_IsFunction
        - JS_NewObjectProtoClass
        - JS_SetConstructorBit
        - JS_SetOpaque
        - JS_ThrowTypeErrorNotAnObject
        - js_malloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:50766,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:50768,11'
          Dst:             JS_NewObjectProtoClass
        - Src:             'quickjs.c:50769,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50771,9'
          Dst:             js_malloc
        - Src:             'quickjs.c:50773,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50776,17'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:50777,18'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:50778,18'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:50780,5'
          Dst:             JS_SetOpaque
        - Src:             'quickjs.c:50781,36'
          Dst:             JS_IsConstructor
        - Src:             'quickjs.c:50781,5'
          Dst:             JS_SetConstructorBit
    - functionName:    js_proxy_call_constructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50644
      functionLinenumberEnd: 50673
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          115
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - JS_Call
        - JS_CallConstructor2
        - JS_FreeValue
        - JS_IsConstructor
        - JS_IsException
        - JS_IsUndefined
        - JS_ThrowTypeErrorNotAConstructor
        - JS_ThrowTypeErrorNotAnObject
        - get_proxy_method
        - js_create_array
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:50649,9'
          Dst:             get_proxy_method
        - Src:             'quickjs.c:50652,10'
          Dst:             JS_IsConstructor
        - Src:             'quickjs.c:50653,16'
          Dst:             JS_ThrowTypeErrorNotAConstructor
        - Src:             'quickjs.c:50654,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:50655,16'
          Dst:             JS_CallConstructor2
        - Src:             'quickjs.c:50656,17'
          Dst:             js_create_array
        - Src:             'quickjs.c:50657,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50664,11'
          Dst:             JS_Call
        - Src:             'quickjs.c:50665,10'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50666,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50667,15'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:50670,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50671,5'
          Dst:             JS_FreeValue
    - functionName:    get_proxy_method
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49911
      functionLinenumberEnd: 49933
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          71
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_GetOpaque
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsNull
        - JS_ThrowStackOverflow
        - JS_ThrowTypeErrorRevokedProxy
        - js_check_stack_overflow
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:49912,22'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:49916,9'
          Dst:             js_check_stack_overflow
        - Src:             'quickjs.c:49917,9'
          Dst:             JS_ThrowStackOverflow
        - Src:             'quickjs.c:49923,9'
          Dst:             JS_ThrowTypeErrorRevokedProxy
        - Src:             'quickjs.c:49926,14'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:49927,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49929,9'
          Dst:             JS_IsNull
    - functionName:    js_create_desc
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50224
      functionLinenumberEnd: 50257
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          120
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - JS_DefinePropertyValue
        - JS_DupValue
        - JS_IsException
        - JS_NewObject
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:50226,11'
          Dst:             JS_NewObject
        - Src:             'quickjs.c:50227,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50230,55'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:50230,9'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:50234,55'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:50234,9'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:50238,57'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:50238,9'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:50242,9'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:50247,9'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:50252,9'
          Dst:             JS_DefinePropertyValue
    - functionName:    find_prop_key
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50514
      functionLinenumberEnd: 50521
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          36
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_proxy_prevent_extensions
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50042
      functionLinenumberEnd: 50067
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          83
      EdgeCount:       22
      CyclomaticComplexity: 8
      functionsReached:
        - JS_CallFree
        - JS_IsException
        - JS_IsExtensible
        - JS_IsUndefined
        - JS_PreventExtensions
        - JS_ThrowTypeError
        - JS_ToBoolFree
        - get_proxy_method
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:50048,9'
          Dst:             get_proxy_method
        - Src:             'quickjs.c:50051,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:50052,16'
          Dst:             JS_PreventExtensions
        - Src:             'quickjs.c:50053,11'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:50054,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50056,11'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:50058,16'
          Dst:             JS_IsExtensible
        - Src:             'quickjs.c:50062,13'
          Dst:             JS_ThrowTypeError
    - functionName:    js_proxy_is_extensible
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50016
      functionLinenumberEnd: 50039
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          76
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached:
        - JS_CallFree
        - JS_IsException
        - JS_IsExtensible
        - JS_IsUndefined
        - JS_ThrowTypeError
        - JS_ToBoolFree
        - get_proxy_method
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:50022,9'
          Dst:             get_proxy_method
        - Src:             'quickjs.c:50025,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:50026,16'
          Dst:             JS_IsExtensible
        - Src:             'quickjs.c:50027,11'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:50028,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50030,11'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:50031,12'
          Dst:             JS_IsExtensible
        - Src:             'quickjs.c:50035,9'
          Dst:             JS_ThrowTypeError
    - functionName:    js_proxy_set_prototype
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49978
      functionLinenumberEnd: 50013
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          114
      EdgeCount:       28
      CyclomaticComplexity: 10
      functionsReached:
        - JS_CallFree
        - JS_FreeValue
        - JS_GetPrototype
        - JS_IsException
        - JS_IsExtensible
        - JS_IsUndefined
        - JS_SetPrototypeInternal
        - JS_ThrowTypeError
        - JS_ToBoolFree
        - get_proxy_method
        - js_same_value
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:49985,9'
          Dst:             get_proxy_method
        - Src:             'quickjs.c:49988,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:49989,16'
          Dst:             JS_SetPrototypeInternal
        - Src:             'quickjs.c:49992,11'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:49993,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49995,11'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:49998,12'
          Dst:             JS_IsExtensible
        - Src:             'quickjs.c:50002,18'
          Dst:             JS_GetPrototype
        - Src:             'quickjs.c:50003,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50005,14'
          Dst:             js_same_value
        - Src:             'quickjs.c:50006,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50007,13'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:50010,9'
          Dst:             JS_FreeValue
    - functionName:    js_proxy_get_prototype
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49936
      functionLinenumberEnd: 49974
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          133
      EdgeCount:       34
      CyclomaticComplexity: 11
      functionsReached:
        - JS_CallFree
        - JS_FreeValue
        - JS_GetPrototype
        - JS_IsException
        - JS_IsExtensible
        - JS_IsUndefined
        - JS_ThrowTypeError
        - get_proxy_method
        - js_same_value
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:49941,9'
          Dst:             get_proxy_method
        - Src:             'quickjs.c:49944,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:49945,16'
          Dst:             JS_GetPrototype
        - Src:             'quickjs.c:49946,11'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:49947,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49953,11'
          Dst:             JS_IsExtensible
        - Src:             'quickjs.c:49955,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49960,18'
          Dst:             JS_GetPrototype
        - Src:             'quickjs.c:49961,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49962,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49965,14'
          Dst:             js_same_value
        - Src:             'quickjs.c:49966,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49968,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49969,20'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:49971,9'
          Dst:             JS_FreeValue
    - functionName:    js_proxy_set
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50165
      functionLinenumberEnd: 50219
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          186
      EdgeCount:       51
      CyclomaticComplexity: 16
      functionsReached:
        - JS_AtomToValue
        - JS_CallFree
        - JS_DupValue
        - JS_FreeValue
        - JS_GetOwnPropertyInternal
        - JS_IsException
        - JS_IsUndefined
        - JS_SetPropertyInternal
        - JS_ThrowTypeError
        - JS_ToBoolFree
        - get_proxy_method
        - is_strict_mode
        - js_free_desc
        - js_same_value
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:50171,9'
          Dst:             get_proxy_method
        - Src:             'quickjs.c:50174,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:50176,39'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:50175,16'
          Dst:             JS_SetPropertyInternal
        - Src:             'quickjs.c:50179,16'
          Dst:             JS_AtomToValue
        - Src:             'quickjs.c:50180,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50181,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50188,12'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:50189,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50190,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50192,11'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:50195,15'
          Dst:             JS_GetOwnPropertyInternal
        - Src:             'quickjs.c:50200,22'
          Dst:             js_same_value
        - Src:             'quickjs.c:50203,100'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:50205,21'
          Dst:             js_free_desc
        - Src:             'quickjs.c:50206,21'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:50209,13'
          Dst:             js_free_desc
        - Src:             'quickjs.c:50213,48'
          Dst:             is_strict_mode
        - Src:             'quickjs.c:50214,13'
          Dst:             JS_ThrowTypeError
    - functionName:    js_proxy_get
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50115
      functionLinenumberEnd: 50161
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          165
      EdgeCount:       40
      CyclomaticComplexity: 13
      functionsReached:
        - JS_AtomToValue
        - JS_CallFree
        - JS_FreeValue
        - JS_GetOwnPropertyInternal
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsUndefined
        - JS_ThrowTypeError
        - get_proxy_method
        - js_free_desc
        - js_same_value
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:50122,9'
          Dst:             get_proxy_method
        - Src:             'quickjs.c:50126,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:50127,16'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:50128,16'
          Dst:             JS_AtomToValue
        - Src:             'quickjs.c:50129,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50130,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50136,11'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:50137,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50138,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50140,11'
          Dst:             JS_GetOwnPropertyInternal
        - Src:             'quickjs.c:50142,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50147,18'
          Dst:             js_same_value
        - Src:             'quickjs.c:50151,17'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:50151,49'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:50153,17'
          Dst:             js_free_desc
        - Src:             'quickjs.c:50154,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50155,24'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:50158,9'
          Dst:             js_free_desc
    - functionName:    js_proxy_has
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50070
      functionLinenumberEnd: 50111
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          129
      EdgeCount:       34
      CyclomaticComplexity: 11
      functionsReached:
        - JS_AtomToValue
        - JS_CallFree
        - JS_FreeValue
        - JS_GetOwnPropertyInternal
        - JS_HasProperty
        - JS_IsException
        - JS_IsUndefined
        - JS_ThrowTypeError
        - JS_ToBoolFree
        - get_proxy_method
        - js_free_desc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:50078,9'
          Dst:             get_proxy_method
        - Src:             'quickjs.c:50081,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:50082,16'
          Dst:             JS_HasProperty
        - Src:             'quickjs.c:50083,16'
          Dst:             JS_AtomToValue
        - Src:             'quickjs.c:50084,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50085,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50090,12'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:50091,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50092,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50094,11'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:50098,15'
          Dst:             JS_GetOwnPropertyInternal
        - Src:             'quickjs.c:50103,13'
          Dst:             js_free_desc
        - Src:             'quickjs.c:50105,17'
          Dst:             JS_ThrowTypeError
    - functionName:    js_proxy_define_own_property
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50368
      functionLinenumberEnd: 50459
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         62
      ICount:          304
      EdgeCount:       88
      CyclomaticComplexity: 28
      functionsReached:
        - JS_AtomToValue
        - JS_CallFree
        - JS_DefineProperty
        - JS_FreeValue
        - JS_GetOwnPropertyInternal
        - JS_IsException
        - JS_IsUndefined
        - JS_ThrowTypeError
        - JS_ToBoolFree
        - check_define_prop_flags
        - get_proxy_method
        - js_create_desc
        - js_free_desc
        - js_same_value
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:50377,9'
          Dst:             get_proxy_method
        - Src:             'quickjs.c:50380,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:50381,16'
          Dst:             JS_DefineProperty
        - Src:             'quickjs.c:50383,16'
          Dst:             JS_AtomToValue
        - Src:             'quickjs.c:50384,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50385,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50388,16'
          Dst:             js_create_desc
        - Src:             'quickjs.c:50389,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50390,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50391,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50397,12'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:50398,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50399,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50400,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50402,11'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:50405,13'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:50412,11'
          Dst:             JS_GetOwnPropertyInternal
        - Src:             'quickjs.c:50422,14'
          Dst:             check_define_prop_flags
        - Src:             'quickjs.c:50428,22'
          Dst:             js_same_value
        - Src:             'quickjs.c:50432,22'
          Dst:             js_same_value
        - Src:             'quickjs.c:50437,22'
          Dst:             js_same_value
        - Src:             'quickjs.c:50451,13'
          Dst:             js_free_desc
        - Src:             'quickjs.c:50453,13'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:50456,9'
          Dst:             js_free_desc
    - functionName:    js_proxy_delete_property
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50463
      functionLinenumberEnd: 50510
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          139
      EdgeCount:       38
      CyclomaticComplexity: 12
      functionsReached:
        - JS_AtomToValue
        - JS_CallFree
        - JS_DeleteProperty
        - JS_FreeValue
        - JS_GetOwnPropertyInternal
        - JS_IsException
        - JS_IsExtensible
        - JS_IsUndefined
        - JS_ThrowTypeError
        - JS_ToBoolFree
        - get_proxy_method
        - js_free_desc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:50469,9'
          Dst:             get_proxy_method
        - Src:             'quickjs.c:50472,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:50473,16'
          Dst:             JS_DeleteProperty
        - Src:             'quickjs.c:50475,16'
          Dst:             JS_AtomToValue
        - Src:             'quickjs.c:50476,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50477,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50482,11'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:50483,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50484,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50486,11'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:50489,16'
          Dst:             JS_GetOwnPropertyInternal
        - Src:             'quickjs.c:50495,29'
          Dst:             JS_IsExtensible
        - Src:             'quickjs.c:50501,17'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:50503,17'
          Dst:             js_free_desc
        - Src:             'quickjs.c:50506,13'
          Dst:             js_free_desc
    - functionName:    js_proxy_get_own_property_names
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50527
      functionLinenumberEnd: 50639
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         77
      ICount:          368
      EdgeCount:       108
      CyclomaticComplexity: 33
      functionsReached:
        - JS_CallFree
        - JS_FreePropertyEnum
        - JS_FreeValue
        - JS_GetOwnPropertyInternal
        - JS_GetOwnPropertyNamesInternal
        - JS_GetPropertyUint32
        - JS_IsException
        - JS_IsExtensible
        - JS_IsString
        - JS_IsSymbol
        - JS_IsUndefined
        - JS_ThrowTypeError
        - JS_ThrowTypeErrorRevokedProxy
        - JS_ValueToAtom
        - find_prop_key
        - get_proxy_method
        - js_free_desc
        - js_get_length32
        - js_mallocz
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:50536,9'
          Dst:             get_proxy_method
        - Src:             'quickjs.c:50539,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:50540,16'
          Dst:             JS_GetOwnPropertyNamesInternal
        - Src:             'quickjs.c:50544,18'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:50545,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50551,9'
          Dst:             js_get_length32
        - Src:             'quickjs.c:50554,15'
          Dst:             js_mallocz
        - Src:             'quickjs.c:50559,15'
          Dst:             JS_GetPropertyUint32
        - Src:             'quickjs.c:50560,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50562,14'
          Dst:             JS_IsString
        - Src:             'quickjs.c:50562,35'
          Dst:             JS_IsSymbol
        - Src:             'quickjs.c:50563,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50564,13'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:50567,16'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:50568,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50578,13'
          Dst:             find_prop_key
        - Src:             'quickjs.c:50579,13'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:50584,21'
          Dst:             JS_IsExtensible
        - Src:             'quickjs.c:50590,9'
          Dst:             JS_ThrowTypeErrorRevokedProxy
        - Src:             'quickjs.c:50593,9'
          Dst:             JS_GetOwnPropertyNamesInternal
        - Src:             'quickjs.c:50598,13'
          Dst:             JS_ThrowTypeErrorRevokedProxy
        - Src:             'quickjs.c:50601,15'
          Dst:             JS_GetOwnPropertyInternal
        - Src:             'quickjs.c:50606,13'
          Dst:             js_free_desc
        - Src:             'quickjs.c:50608,23'
          Dst:             find_prop_key
        - Src:             'quickjs.c:50610,21'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:50623,17'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:50629,5'
          Dst:             JS_FreePropertyEnum
        - Src:             'quickjs.c:50630,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50635,5'
          Dst:             JS_FreePropertyEnum
        - Src:             'quickjs.c:50636,5'
          Dst:             JS_FreePropertyEnum
        - Src:             'quickjs.c:50637,5'
          Dst:             JS_FreeValue
    - functionName:    js_proxy_get_own_property
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50261
      functionLinenumberEnd: 50362
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         61
      ICount:          287
      EdgeCount:       86
      CyclomaticComplexity: 27
      functionsReached:
        - JS_AtomToValue
        - JS_CallFree
        - JS_FreeValue
        - JS_GetOwnPropertyInternal
        - JS_IsException
        - JS_IsExtensible
        - JS_IsObject
        - JS_IsUndefined
        - JS_ThrowTypeError
        - check_define_prop_flags
        - get_proxy_method
        - js_free_desc
        - js_obj_to_desc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:50269,9'
          Dst:             get_proxy_method
        - Src:             'quickjs.c:50273,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:50274,16'
          Dst:             JS_GetOwnPropertyInternal
        - Src:             'quickjs.c:50276,16'
          Dst:             JS_AtomToValue
        - Src:             'quickjs.c:50277,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50278,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50283,23'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:50284,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50285,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50287,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:50287,43'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:50288,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50291,23'
          Dst:             JS_GetOwnPropertyInternal
        - Src:             'quickjs.c:50293,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50298,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:50297,9'
          Dst:             js_free_desc
        - Src:             'quickjs.c:50298,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:50306,29'
          Dst:             JS_IsExtensible
        - Src:             'quickjs.c:50308,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50311,15'
          Dst:             js_obj_to_desc
        - Src:             'quickjs.c:50312,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50333,18'
          Dst:             check_define_prop_flags
        - Src:             'quickjs.c:50348,17'
          Dst:             js_free_desc
        - Src:             'quickjs.c:50350,17'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:50358,13'
          Dst:             js_free_desc
    - functionName:    js_proxy_mark
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49896
      functionLinenumberEnd: 49902
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_GetOpaque
        - JS_MarkValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:49897,22'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:49899,9'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:49900,9'
          Dst:             JS_MarkValue
    - functionName:    js_proxy_finalizer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49885
      functionLinenumberEnd: 49892
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeValueRT
        - JS_GetOpaque
        - js_free_rt
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:49886,22'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:49888,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:49889,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:49890,9'
          Dst:             js_free_rt
    - functionName:    is_valid_raw_json_char
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49184
      functionLinenumberEnd: 49188
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          48
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    json_parse_record_find
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48740
      functionLinenumberEnd: 48761
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          86
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    internalize_json_property
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49016
      functionLinenumberEnd: 49116
      functionDepth:   0
      returnType:      'N/A'
      argCount:        8
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         63
      ICount:          331
      EdgeCount:       88
      CyclomaticComplexity: 27
      functionsReached:
        - JS_AtomToValue
        - JS_Call
        - JS_DefinePropertyValue
        - JS_DeleteProperty
        - JS_DupAtom
        - JS_FreeAtom
        - JS_FreePropertyEnum
        - JS_FreeValue
        - JS_GetOwnPropertyNamesInternal
        - JS_GetPropertyInternal
        - JS_IsArray
        - JS_IsException
        - JS_IsObject
        - JS_IsUndefined
        - JS_NewAtomUInt32
        - JS_NewObject
        - JS_NewStringLen
        - JS_ThrowStackOverflow
        - __JS_AtomIsTaggedInt
        - __JS_AtomToUInt32
        - internalize_json_property
        - js_check_stack_overflow
        - js_get_length32
        - js_same_value
        - json_parse_record_find
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:49024,9'
          Dst:             js_check_stack_overflow
        - Src:             'quickjs.c:49025,16'
          Dst:             JS_ThrowStackOverflow
        - Src:             'quickjs.c:49028,11'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:49029,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49033,13'
          Dst:             JS_IsArray
        - Src:             'quickjs.c:49034,17'
          Dst:             __JS_AtomIsTaggedInt
        - Src:             'quickjs.c:49035,32'
          Dst:             __JS_AtomToUInt32
        - Src:             'quickjs.c:49043,18'
          Dst:             json_parse_record_find
        - Src:             'quickjs.c:49045,20'
          Dst:             js_same_value
        - Src:             'quickjs.c:49050,15'
          Dst:             JS_NewObject
        - Src:             'quickjs.c:49051,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49054,9'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:49055,20'
          Dst:             JS_IsArray
        - Src:             'quickjs.c:49059,17'
          Dst:             js_get_length32
        - Src:             'quickjs.c:49062,19'
          Dst:             JS_GetOwnPropertyNamesInternal
        - Src:             'quickjs.c:49068,24'
          Dst:             JS_NewAtomUInt32
        - Src:             'quickjs.c:49072,24'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:49074,22'
          Dst:             internalize_json_property
        - Src:             'quickjs.c:49075,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49076,17'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:49079,17'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:49080,23'
          Dst:             JS_DeleteProperty
        - Src:             'quickjs.c:49082,23'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:49084,13'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:49090,22'
          Dst:             JS_NewStringLen
        - Src:             'quickjs.c:49092,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49094,17'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:49098,5'
          Dst:             JS_FreePropertyEnum
        - Src:             'quickjs.c:49100,16'
          Dst:             JS_AtomToValue
        - Src:             'quickjs.c:49101,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49106,11'
          Dst:             JS_Call
        - Src:             'quickjs.c:49107,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49108,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49109,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49112,5'
          Dst:             JS_FreePropertyEnum
        - Src:             'quickjs.c:49113,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49114,5'
          Dst:             JS_FreeValue
    - functionName:    js_json_stringify
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49691
      functionLinenumberEnd: 49693
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_JSONStringify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:49693,12'
          Dst:             JS_JSONStringify
    - functionName:    JS_JSONStringify
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49557
      functionLinenumberEnd: 49687
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         75
      ICount:          469
      EdgeCount:       106
      CyclomaticComplexity: 33
      functionsReached:
        - JS_AtomToString
        - JS_DefinePropertyValue
        - JS_DupValue
        - JS_FreeValue
        - JS_GetPropertyInt64
        - JS_IsArray
        - JS_IsException
        - JS_IsFunction
        - JS_IsNumber
        - JS_IsObject
        - JS_IsString
        - JS_IsUndefined
        - JS_NewArray
        - JS_NewObject
        - JS_SetPropertyInt64
        - JS_ToBoolFree
        - JS_ToInt32Clamp
        - JS_ToNumberFree
        - JS_ToStringFree
        - js_array_includes
        - js_get_length64
        - js_json_check
        - js_json_to_str
        - js_new_string8_len
        - js_sub_string
        - min_int
        - string_buffer_end
        - string_buffer_free
        - string_buffer_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:49569,18'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:49573,5'
          Dst:             string_buffer_init
        - Src:             'quickjs.c:49574,18'
          Dst:             JS_NewArray
        - Src:             'quickjs.c:49575,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49577,9'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:49580,15'
          Dst:             JS_IsArray
        - Src:             'quickjs.c:49585,34'
          Dst:             JS_NewArray
        - Src:             'quickjs.c:49586,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49588,17'
          Dst:             js_get_length64
        - Src:             'quickjs.c:49592,21'
          Dst:             JS_GetPropertyInt64
        - Src:             'quickjs.c:49593,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49595,21'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:49599,29'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:49600,29'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49603,25'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49606,28'
          Dst:             JS_IsNumber
        - Src:             'quickjs.c:49607,25'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:49608,25'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49610,29'
          Dst:             JS_IsString
        - Src:             'quickjs.c:49611,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49614,27'
          Dst:             js_array_includes
        - Src:             'quickjs.c:49616,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49617,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49620,22'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:49621,21'
          Dst:             JS_SetPropertyInt64
        - Src:             'quickjs.c:49623,21'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49628,13'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:49629,9'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:49632,21'
          Dst:             JS_ToNumberFree
        - Src:             'quickjs.c:49634,21'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:49636,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49637,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49641,9'
          Dst:             JS_IsNumber
        - Src:             'quickjs.c:49643,13'
          Dst:             JS_ToInt32Clamp
        - Src:             'quickjs.c:49645,20'
          Dst:             js_new_string8_len
        - Src:             'quickjs.c:49646,16'
          Dst:             JS_IsString
        - Src:             'quickjs.c:49648,45'
          Dst:             min_int
        - Src:             'quickjs.c:49648,20'
          Dst:             js_sub_string
        - Src:             'quickjs.c:49650,20'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:49652,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49653,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49655,15'
          Dst:             JS_NewObject
        - Src:             'quickjs.c:49656,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49659,32'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:49658,9'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:49661,11'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:49663,11'
          Dst:             js_json_check
        - Src:             'quickjs.c:49664,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49666,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:49670,9'
          Dst:             js_json_to_str
        - Src:             'quickjs.c:49673,11'
          Dst:             string_buffer_end
        - Src:             'quickjs.c:49679,5'
          Dst:             string_buffer_free
        - Src:             'quickjs.c:49681,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49682,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49683,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49684,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49685,5'
          Dst:             JS_FreeValue
    - functionName:    js_array_includes
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41797
      functionLinenumberEnd: 41843
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          173
      EdgeCount:       44
      CyclomaticComplexity: 14
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_GetPropertyInt64
        - JS_IsException
        - JS_ToInt64Clamp
        - JS_ToObject
        - js_get_fast_array
        - js_get_length64
        - js_strict_eq2
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:41804,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:41805,9'
          Dst:             js_get_length64
        - Src:             'quickjs.c:41812,17'
          Dst:             JS_ToInt64Clamp
        - Src:             'quickjs.c:41815,13'
          Dst:             js_get_fast_array
        - Src:             'quickjs.c:41817,40'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:41818,35'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:41817,21'
          Dst:             js_strict_eq2
        - Src:             'quickjs.c:41826,19'
          Dst:             JS_GetPropertyInt64
        - Src:             'quickjs.c:41827,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:41829,36'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:41829,17'
          Dst:             js_strict_eq2
        - Src:             'quickjs.c:0,0'
          Dst:             JS_FreeValue
    - functionName:    js_json_check
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49307
      functionLinenumberEnd: 49361
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          177
      EdgeCount:       44
      CyclomaticComplexity: 9
      functionsReached:
        - JS_Call
        - JS_CallFree
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsBigInt
        - JS_IsException
        - JS_IsFunction
        - JS_IsObject
        - JS_IsUndefined
      functionUses:    4
      BranchProfiles:
        - Branch String:   'quickjs.c:49338,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:49313,9'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:49313,29'
          Dst:             JS_IsBigInt
        - Src:             'quickjs.c:49314,21'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:49315,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49317,13'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:49318,17'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:49319,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49321,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49324,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49328,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:49331,13'
          Dst:             JS_Call
        - Src:             'quickjs.c:49332,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49334,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49340,13'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:49355,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49359,5'
          Dst:             JS_FreeValue
    - functionName:    js_json_to_str
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49366
      functionLinenumberEnd: 49553
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         139
      ICount:          781
      EdgeCount:       191
      CyclomaticComplexity: 54
      functionsReached:
        - JS_ConcatString
        - JS_ConcatString3
        - JS_DupValue
        - JS_FreeValue
        - JS_GetPropertyInt64
        - JS_GetPropertyInternal
        - JS_GetPropertyValue
        - JS_IsArray
        - JS_IsEmptyString
        - JS_IsException
        - JS_IsObject
        - JS_IsUndefined
        - JS_ThrowStackOverflow
        - JS_ThrowTypeError
        - JS_ToBoolFree
        - JS_ToNumberFree
        - JS_ToQuotedString
        - JS_ToQuotedStringFree
        - JS_ToStringFree
        - __JS_NewFloat64
        - check_exception_free
        - js_array_includes
        - js_array_pop
        - js_array_push
        - js_check_stack_overflow
        - js_get_length64
        - js_json_check
        - js_json_to_str
        - js_new_string8
        - js_object_keys
        - set_value
        - string_buffer_concat_value
        - string_buffer_concat_value_free
        - string_buffer_putc8
      functionUses:    4
      BranchProfiles:
        - Branch String:   'quickjs.c:49521,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:49379,9'
          Dst:             js_check_stack_overflow
        - Src:             'quickjs.c:49380,9'
          Dst:             JS_ThrowStackOverflow
        - Src:             'quickjs.c:49384,9'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:49388,19'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:49389,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49393,19'
          Dst:             JS_ToNumberFree
        - Src:             'quickjs.c:49394,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49399,34'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:49399,13'
          Dst:             set_value
        - Src:             'quickjs.c:49403,20'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:49404,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49406,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49410,13'
          Dst:             js_array_includes
        - Src:             'quickjs.c:49411,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49413,13'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:49414,13'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:49417,40'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:49417,66'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:49417,19'
          Dst:             JS_ConcatString
        - Src:             'quickjs.c:49418,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49420,14'
          Dst:             JS_IsEmptyString
        - Src:             'quickjs.c:49421,47'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:49421,19'
          Dst:             JS_ConcatString3
        - Src:             'quickjs.c:49422,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49424,20'
          Dst:             js_new_string8
        - Src:             'quickjs.c:49425,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49428,19'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:49429,20'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:49431,13'
          Dst:             js_array_push
        - Src:             'quickjs.c:49432,13'
          Dst:             check_exception_free
        - Src:             'quickjs.c:49434,15'
          Dst:             JS_IsArray
        - Src:             'quickjs.c:49438,17'
          Dst:             js_get_length64
        - Src:             'quickjs.c:49440,13'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:49444,17'
          Dst:             string_buffer_concat_value
        - Src:             'quickjs.c:49445,21'
          Dst:             JS_GetPropertyInt64
        - Src:             'quickjs.c:49446,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49449,24'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:49450,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49452,21'
          Dst:             js_json_check
        - Src:             'quickjs.c:49453,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49455,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49457,21'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:49459,21'
          Dst:             js_json_to_str
        - Src:             'quickjs.c:49443,21'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:49444,17'
          Dst:             string_buffer_concat_value
        - Src:             'quickjs.c:49445,21'
          Dst:             JS_GetPropertyInt64
        - Src:             'quickjs.c:49446,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49449,45'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:49449,24'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:49450,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49452,21'
          Dst:             js_json_check
        - Src:             'quickjs.c:49453,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49455,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49457,21'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:49459,21'
          Dst:             js_json_to_str
        - Src:             'quickjs.c:49462,29'
          Dst:             JS_IsEmptyString
        - Src:             'quickjs.c:49463,17'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:49464,17'
          Dst:             string_buffer_concat_value
        - Src:             'quickjs.c:49466,13'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:49468,18'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:49469,23'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:49471,23'
          Dst:             js_object_keys
        - Src:             'quickjs.c:49472,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49474,17'
          Dst:             js_get_length64
        - Src:             'quickjs.c:49476,13'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:49479,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49480,24'
          Dst:             JS_GetPropertyInt64
        - Src:             'quickjs.c:49481,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49483,51'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:49483,21'
          Dst:             JS_GetPropertyValue
        - Src:             'quickjs.c:49484,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49486,21'
          Dst:             js_json_check
        - Src:             'quickjs.c:49487,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49489,22'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:49491,25'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:49492,21'
          Dst:             string_buffer_concat_value
        - Src:             'quickjs.c:49493,25'
          Dst:             JS_ToQuotedString
        - Src:             'quickjs.c:49494,25'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49497,21'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:49498,21'
          Dst:             string_buffer_concat_value
        - Src:             'quickjs.c:49499,25'
          Dst:             js_json_to_str
        - Src:             'quickjs.c:49504,33'
          Dst:             JS_IsEmptyString
        - Src:             'quickjs.c:49505,17'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:49506,17'
          Dst:             string_buffer_concat_value
        - Src:             'quickjs.c:49508,13'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:49510,39'
          Dst:             js_array_pop
        - Src:             'quickjs.c:49510,13'
          Dst:             check_exception_free
        - Src:             'quickjs.c:49512,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49513,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49514,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49515,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49516,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49517,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49524,16'
          Dst:             JS_ToQuotedStringFree
        - Src:             'quickjs.c:49534,16'
          Dst:             string_buffer_concat_value_free
        - Src:             'quickjs.c:49538,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:49541,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49546,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49547,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49548,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49549,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49550,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49551,5'
          Dst:             JS_FreeValue
    - functionName:    js_object_keys
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39883
      functionLinenumberEnd: 39884
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_GetOwnPropertyNames2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39884,12'
          Dst:             JS_GetOwnPropertyNames2
    - functionName:    JS_ToQuotedString
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49238
      functionLinenumberEnd: 49297
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          173
      EdgeCount:       51
      CyclomaticComplexity: 12
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_ToStringCheckObject
        - is_surrogate
        - snprintf
        - string_buffer_putc
        - string_buffer_putc8
        - string_buffer_puts8
        - string_getc
      functionUses:    2
      BranchProfiles:
        - Branch String:   'quickjs.c:49254,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:49245,11'
          Dst:             JS_ToStringCheckObject
        - Src:             'quickjs.c:49246,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49250,9'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:49253,13'
          Dst:             string_getc
        - Src:             'quickjs.c:49273,17'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:49275,17'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:49279,27'
          Dst:             is_surrogate
        - Src:             'quickjs.c:49280,17'
          Dst:             snprintf
        - Src:             'quickjs.c:49281,21'
          Dst:             string_buffer_puts8
        - Src:             'quickjs.c:49284,21'
          Dst:             string_buffer_putc
        - Src:             'quickjs.c:49290,9'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:0,0'
          Dst:             JS_FreeValue
    - functionName:    js_array_pop
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42095
      functionLinenumberEnd: 42144
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          190
      EdgeCount:       46
      CyclomaticComplexity: 14
      functionsReached:
        - JS_CopySubArray
        - JS_DeletePropertyInt64
        - JS_FreeValue
        - JS_GetPropertyInt64
        - JS_IsException
        - JS_SetProperty
        - JS_ToObject
        - __JS_NewFloat64
        - js_get_fast_array
        - js_get_length64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:42101,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:42102,9'
          Dst:             js_get_length64
        - Src:             'quickjs.c:42108,13'
          Dst:             js_get_fast_array
        - Src:             'quickjs.c:42120,23'
          Dst:             JS_GetPropertyInt64
        - Src:             'quickjs.c:42121,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:42123,21'
          Dst:             JS_CopySubArray
        - Src:             'quickjs.c:42126,23'
          Dst:             JS_GetPropertyInt64
        - Src:             'quickjs.c:42127,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:42130,17'
          Dst:             JS_DeletePropertyInt64
        - Src:             'quickjs.c:42134,50'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:42134,9'
          Dst:             JS_SetProperty
        - Src:             'quickjs.c:42141,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:0,0'
          Dst:             JS_FreeValue
    - functionName:    JS_ToQuotedStringFree
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49299
      functionLinenumberEnd: 49302
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_FreeValue
        - JS_ToQuotedString
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:49300,15'
          Dst:             JS_ToQuotedString
        - Src:             'quickjs.c:49301,5'
          Dst:             JS_FreeValue
    - functionName:    js_json_rawJSON
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49193
      functionLinenumberEnd: 49225
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          113
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - JS_DefinePropertyValue
        - JS_FreeValue
        - JS_IsException
        - JS_NewObjectProtoClass
        - JS_PreventExtensions
        - JS_ThrowSyntaxError
        - JS_ToString
        - is_valid_raw_json_char
        - js_json_parse
        - string_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:49196,11'
          Dst:             JS_ToString
        - Src:             'quickjs.c:49197,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49201,33'
          Dst:             string_get
        - Src:             'quickjs.c:49201,10'
          Dst:             is_valid_raw_json_char
        - Src:             'quickjs.c:49202,33'
          Dst:             string_get
        - Src:             'quickjs.c:49202,10'
          Dst:             is_valid_raw_json_char
        - Src:             'quickjs.c:49205,11'
          Dst:             js_json_parse
        - Src:             'quickjs.c:49206,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49208,9'
          Dst:             JS_ThrowSyntaxError
        - Src:             'quickjs.c:49211,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49213,11'
          Dst:             JS_NewObjectProtoClass
        - Src:             'quickjs.c:49214,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49216,9'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:49217,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49220,5'
          Dst:             JS_PreventExtensions
        - Src:             'quickjs.c:49223,5'
          Dst:             JS_FreeValue
    - functionName:    js_json_parse
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49120
      functionLinenumberEnd: 49169
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          120
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - JS_DefinePropertyValue
        - JS_FreeCString
        - JS_FreeValue
        - JS_IsException
        - JS_IsFunction
        - JS_NewObject
        - JS_ParseJSON3
        - JS_ToCStringLen
        - internalize_json_property
        - json_free_parse_record
        - json_parse_record_add
        - json_parse_record_init_obj
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:49125,11'
          Dst:             JS_ToCStringLen
        - Src:             'quickjs.c:49128,21'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:49135,16'
          Dst:             JS_NewObject
        - Src:             'quickjs.c:49136,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49138,9'
          Dst:             json_parse_record_init_obj
        - Src:             'quickjs.c:49140,15'
          Dst:             json_parse_record_add
        - Src:             'quickjs.c:49144,15'
          Dst:             JS_ParseJSON3
        - Src:             'quickjs.c:49145,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:49148,13'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:49150,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49152,13'
          Dst:             json_free_parse_record
        - Src:             'quickjs.c:49153,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49157,15'
          Dst:             internalize_json_property
        - Src:             'quickjs.c:49159,9'
          Dst:             json_free_parse_record
        - Src:             'quickjs.c:49160,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:49162,15'
          Dst:             JS_ParseJSON3
        - Src:             'quickjs.c:49164,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:49167,5'
          Dst:             JS_FreeCString
    - functionName:    json_parse_record_init_obj
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48662
      functionLinenumberEnd: 48668
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:48663,17'
          Dst:             JS_DupValue
    - functionName:    json_parse_record_add
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48710
      functionLinenumberEnd: 48737
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          96
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - JS_DupAtom
        - clz32
        - js_resize_array
        - json_parse_record_resize_hash
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:48716,9'
          Dst:             js_resize_array
        - Src:             'quickjs.c:48722,30'
          Dst:             clz32
        - Src:             'quickjs.c:48723,13'
          Dst:             json_parse_record_resize_hash
        - Src:             'quickjs.c:48728,15'
          Dst:             JS_DupAtom
    - functionName:    JS_ParseJSON3
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48976
      functionLinenumberEnd: 48998
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          62
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - free_token
        - js_parse_error
        - js_parse_init
        - json_free_parse_record
        - json_next_token
        - json_parse_value
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:48980,5'
          Dst:             js_parse_init
        - Src:             'quickjs.c:48982,9'
          Dst:             json_next_token
        - Src:             'quickjs.c:48984,11'
          Dst:             json_parse_value
        - Src:             'quickjs.c:48985,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48988,13'
          Dst:             js_parse_error
        - Src:             'quickjs.c:48989,13'
          Dst:             json_free_parse_record
        - Src:             'quickjs.c:48995,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48996,5'
          Dst:             free_token
    - functionName:    json_free_parse_record
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48764
      functionLinenumberEnd: 48785
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          109
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - JS_FreeAtom
        - JS_FreeValue
        - JS_IsArray
        - JS_IsObject
        - js_free
        - json_free_parse_record
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:48768,9'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:48769,13'
          Dst:             JS_IsArray
        - Src:             'quickjs.c:48771,17'
          Dst:             json_free_parse_record
        - Src:             'quickjs.c:48776,17'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:48777,17'
          Dst:             json_free_parse_record
        - Src:             'quickjs.c:48779,13'
          Dst:             js_free
        - Src:             'quickjs.c:0,0'
          Dst:             js_free
        - Src:             'quickjs.c:48783,5'
          Dst:             JS_FreeValue
    - functionName:    js_parse_init
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36547
      functionLinenumberEnd: 36560
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    json_next_token
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22902
      functionLinenumberEnd: 23069
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         155
      ICount:          636
      EdgeCount:       181
      CyclomaticComplexity: 28
      functionsReached:
        - free_token
        - is_digit
        - js_check_stack_overflow
        - js_parse_error
        - json_parse_ident
        - json_parse_number
        - json_parse_string
        - unicode_from_utf8
      functionUses:    10
      BranchProfiles:
        - Branch String:   'quickjs.c:22917,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:22907,9'
          Dst:             js_check_stack_overflow
        - Src:             'quickjs.c:22908,16'
          Dst:             js_parse_error
        - Src:             'quickjs.c:22911,5'
          Dst:             free_token
        - Src:             'quickjs.c:22933,13'
          Dst:             json_parse_string
        - Src:             'quickjs.c:22973,25'
          Dst:             unicode_from_utf8
        - Src:             'quickjs.c:22991,25'
          Dst:             unicode_from_utf8
        - Src:             'quickjs.c:23024,16'
          Dst:             json_parse_ident
        - Src:             'quickjs.c:23037,28'
          Dst:             is_digit
        - Src:             'quickjs.c:23048,13'
          Dst:             json_parse_number
        - Src:             'quickjs.c:0,0'
          Dst:             js_parse_error
    - functionName:    json_parse_value
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48789
      functionLinenumberEnd: 48972
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         129
      ICount:          646
      EdgeCount:       176
      CyclomaticComplexity: 49
      functionsReached:
        - JS_DefinePropertyValue
        - JS_DefinePropertyValueUint32
        - JS_DupAtom
        - JS_DupValue
        - JS_FreeAtom
        - JS_FreeValue
        - JS_IsException
        - JS_NewArray
        - JS_NewObject
        - JS_ValueToAtom
        - __JS_NewFloat64
        - js_parse_error
        - js_resize_array
        - json_free_parse_record
        - json_next_token
        - json_parse_expect
        - json_parse_record_add
        - json_parse_record_init_array
        - json_parse_record_init_obj
        - json_parse_record_init_primitive
        - json_parse_value
      functionUses:    3
      BranchProfiles:
        - Branch String:   'quickjs.c:48798,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:48806,17'
          Dst:             json_next_token
        - Src:             'quickjs.c:48808,19'
          Dst:             JS_NewObject
        - Src:             'quickjs.c:48809,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48812,17'
          Dst:             json_parse_record_init_obj
        - Src:             'quickjs.c:48818,37'
          Dst:             JS_ValueToAtom
        - Src:             'quickjs.c:48822,37'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:48824,25'
          Dst:             js_parse_error
        - Src:             'quickjs.c:48827,25'
          Dst:             json_next_token
        - Src:             'quickjs.c:48829,25'
          Dst:             json_parse_expect
        - Src:             'quickjs.c:48832,31'
          Dst:             json_parse_record_add
        - Src:             'quickjs.c:48838,32'
          Dst:             json_parse_value
        - Src:             'quickjs.c:48839,25'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48841,25'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:48844,27'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:48846,21'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:48852,25'
          Dst:             json_next_token
        - Src:             'quickjs.c:48858,17'
          Dst:             json_parse_expect
        - Src:             'quickjs.c:48869,17'
          Dst:             json_next_token
        - Src:             'quickjs.c:48871,19'
          Dst:             JS_NewArray
        - Src:             'quickjs.c:48872,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48875,17'
          Dst:             json_parse_record_init_array
        - Src:             'quickjs.c:48882,29'
          Dst:             js_resize_array
        - Src:             'quickjs.c:48890,26'
          Dst:             json_parse_value
        - Src:             'quickjs.c:48891,25'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48893,27'
          Dst:             JS_DefinePropertyValueUint32
        - Src:             'quickjs.c:48898,25'
          Dst:             json_next_token
        - Src:             'quickjs.c:48905,17'
          Dst:             json_parse_expect
        - Src:             'quickjs.c:48910,15'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:48912,13'
          Dst:             json_parse_record_init_primitive
        - Src:             'quickjs.c:48916,13'
          Dst:             json_next_token
        - Src:             'quickjs.c:48922,13'
          Dst:             json_parse_record_init_primitive
        - Src:             'quickjs.c:48926,13'
          Dst:             json_next_token
        - Src:             'quickjs.c:48934,17'
          Dst:             json_parse_record_init_primitive
        - Src:             'quickjs.c:48941,17'
          Dst:             json_parse_record_init_primitive
        - Src:             'quickjs.c:48948,19'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:48950,19'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:48954,13'
          Dst:             json_next_token
        - Src:             'quickjs.c:48960,13'
          Dst:             js_parse_error
        - Src:             'quickjs.c:48962,13'
          Dst:             js_parse_error
        - Src:             'quickjs.c:48969,5'
          Dst:             json_free_parse_record
        - Src:             'quickjs.c:48970,5'
          Dst:             JS_FreeValue
    - functionName:    json_parse_expect
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48624
      functionLinenumberEnd: 48630
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - js_parse_error
        - json_next_token
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:48627,16'
          Dst:             js_parse_error
        - Src:             'quickjs.c:48629,12'
          Dst:             json_next_token
    - functionName:    json_parse_record_init_array
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48671
      functionLinenumberEnd: 48675
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:48672,17'
          Dst:             JS_DupValue
    - functionName:    json_parse_record_init_primitive
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48679
      functionLinenumberEnd: 48683
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:48680,17'
          Dst:             JS_DupValue
    - functionName:    json_parse_string
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22730
      functionLinenumberEnd: 22814
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         56
      ICount:          262
      EdgeCount:       72
      CyclomaticComplexity: 18
      functionsReached:
        - from_hex
        - js_parse_error
        - js_parse_error_pos
        - string_buffer_end
        - string_buffer_free
        - string_buffer_init
        - string_buffer_putc
        - unicode_from_utf8
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs.c:22753,13'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:22736,9'
          Dst:             string_buffer_init
        - Src:             'quickjs.c:22748,13'
          Dst:             js_parse_error_pos
        - Src:             'quickjs.c:22764,29'
          Dst:             from_hex
        - Src:             'quickjs.c:22766,25'
          Dst:             js_parse_error_pos
        - Src:             'quickjs.c:22764,29'
          Dst:             from_hex
        - Src:             'quickjs.c:22764,29'
          Dst:             from_hex
        - Src:             'quickjs.c:22764,29'
          Dst:             from_hex
        - Src:             'quickjs.c:22788,17'
          Dst:             js_parse_error_pos
        - Src:             'quickjs.c:22793,17'
          Dst:             unicode_from_utf8
        - Src:             'quickjs.c:22795,17'
          Dst:             js_parse_error_pos
        - Src:             'quickjs.c:22800,13'
          Dst:             string_buffer_putc
        - Src:             'quickjs.c:22805,26'
          Dst:             string_buffer_end
        - Src:             'quickjs.c:22810,5'
          Dst:             js_parse_error
        - Src:             'quickjs.c:22812,5'
          Dst:             string_buffer_free
    - functionName:    json_parse_ident
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22698
      functionLinenumberEnd: 22727
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          107
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - JS_NewAtomLen
        - ident_realloc
        - js_free
        - lre_is_id_continue_byte
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:22711,26'
          Dst:             lre_is_id_continue_byte
        - Src:             'quickjs.c:22715,17'
          Dst:             ident_realloc
        - Src:             'quickjs.c:22721,12'
          Dst:             JS_NewAtomLen
        - Src:             'quickjs.c:22724,9'
          Dst:             js_free
    - functionName:    json_parse_number
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22817
      functionLinenumberEnd: 22899
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         87
      ICount:          399
      EdgeCount:       119
      CyclomaticComplexity: 34
      functionsReached:
        - __JS_NewFloat64
        - is_digit
        - js_atod
        - js_parse_error_pos
        - strstart
        - to_digit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:22827,10'
          Dst:             is_digit
        - Src:             'quickjs.c:22829,17'
          Dst:             strstart
        - Src:             'quickjs.c:22834,24'
          Dst:             strstart
        - Src:             'quickjs.c:22861,21'
          Dst:             to_digit
        - Src:             'quickjs.c:22863,28'
          Dst:             js_parse_error_pos
        - Src:             'quickjs.c:22865,21'
          Dst:             js_atod
        - Src:             'quickjs.c:22870,13'
          Dst:             is_digit
        - Src:             'quickjs.c:22871,20'
          Dst:             js_parse_error_pos
        - Src:             'quickjs.c:22874,12'
          Dst:             is_digit
        - Src:             'quickjs.c:22874,12'
          Dst:             is_digit
        - Src:             'quickjs.c:22879,14'
          Dst:             is_digit
        - Src:             'quickjs.c:22880,20'
          Dst:             js_parse_error_pos
        - Src:             'quickjs.c:22881,16'
          Dst:             is_digit
        - Src:             'quickjs.c:22888,14'
          Dst:             is_digit
        - Src:             'quickjs.c:22889,20'
          Dst:             js_parse_error_pos
        - Src:             'quickjs.c:22890,16'
          Dst:             is_digit
        - Src:             'quickjs.c:22893,9'
          Dst:             js_atod
        - Src:             'quickjs.c:22896,26'
          Dst:             __JS_NewFloat64
    - functionName:    json_parse_record_resize_hash
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48686
      functionLinenumberEnd: 48707
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          88
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - js_free
        - js_malloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:48690,22'
          Dst:             js_malloc
        - Src:             'quickjs.c:48693,5'
          Dst:             js_free
    - functionName:    js_json_isRawJSON
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49173
      functionLinenumberEnd: 49181
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_regexp_string_iterator_next
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47900
      functionLinenumberEnd: 47948
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          159
      EdgeCount:       39
      CyclomaticComplexity: 12
      functionsReached:
        - JS_FreeValue
        - JS_GetOpaque2
        - JS_GetPropertyInt64
        - JS_GetPropertyInternal
        - JS_IsEmptyString
        - JS_IsException
        - JS_IsNull
        - JS_RegExpExec
        - JS_SetProperty
        - JS_ToLengthFree
        - JS_ToStringFree
        - __JS_NewFloat64
        - string_advance_index
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:47906,10'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs.c:47915,13'
          Dst:             JS_RegExpExec
        - Src:             'quickjs.c:47916,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47918,9'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:47923,41'
          Dst:             JS_GetPropertyInt64
        - Src:             'quickjs.c:47923,20'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:47924,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47926,13'
          Dst:             JS_IsEmptyString
        - Src:             'quickjs.c:47929,33'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:47928,17'
          Dst:             JS_ToLengthFree
        - Src:             'quickjs.c:47932,25'
          Dst:             string_advance_index
        - Src:             'quickjs.c:47934,32'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:47933,17'
          Dst:             JS_SetProperty
        - Src:             'quickjs.c:47937,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47944,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47945,5'
          Dst:             JS_FreeValue
    - functionName:    JS_RegExpExec
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47749
      functionLinenumberEnd: 47767
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          75
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached:
        - JS_CallFree
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsFunction
        - JS_IsNull
        - JS_IsObject
        - JS_ThrowTypeError
        - js_regexp_exec
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:47752,14'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:47753,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47755,9'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:47756,15'
          Dst:             JS_CallFree
        - Src:             'quickjs.c:47757,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47759,14'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:47759,35'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:47760,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47761,20'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:47765,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47766,12'
          Dst:             js_regexp_exec
    - functionName:    string_advance_index
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44894
      functionLinenumberEnd: 44902
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          51
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - string_getc
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44899,9'
          Dst:             string_getc
    - functionName:    js_regexp_exec
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47414
      functionLinenumberEnd: 47629
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         140
      ICount:          824
      EdgeCount:       195
      CyclomaticComplexity: 57
      functionsReached:
        - JS_DefinePropertyValue
        - JS_DefinePropertyValueUint32
        - JS_DupValue
        - JS_FreeAtom
        - JS_FreeValue
        - JS_HasProperty
        - JS_IsException
        - JS_IsUndefined
        - JS_NewArray
        - JS_NewAtom
        - JS_NewObjectFromShape
        - JS_NewObjectProto
        - JS_SetProperty
        - JS_ThrowInternalError
        - JS_ThrowInterrupted
        - JS_ToLengthFree
        - JS_ToString
        - expand_fast_array
        - get_shape_prop
        - js_dup_shape
        - js_free
        - js_get_regexp
        - js_malloc
        - js_sub_string
        - lre_exec
        - lre_get_alloc_count
        - lre_get_capture_count
        - lre_get_flags
        - lre_get_groupnames
        - max_int
        - set_value
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:47415,20'
          Dst:             js_get_regexp
        - Src:             'quickjs.c:47430,15'
          Dst:             JS_ToString
        - Src:             'quickjs.c:47431,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47442,9'
          Dst:             max_int
        - Src:             'quickjs.c:47442,9'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:47442,9'
          Dst:             JS_ToLengthFree
        - Src:             'quickjs.c:47446,16'
          Dst:             lre_get_flags
        - Src:             'quickjs.c:47451,19'
          Dst:             lre_get_alloc_count
        - Src:             'quickjs.c:47453,19'
          Dst:             js_malloc
        - Src:             'quickjs.c:47457,21'
          Dst:             lre_get_capture_count
        - Src:             'quickjs.c:47463,14'
          Dst:             lre_exec
        - Src:             'quickjs.c:47470,21'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:47470,21'
          Dst:             set_value
        - Src:             'quickjs.c:47470,21'
          Dst:             JS_SetProperty
        - Src:             'quickjs.c:47475,17'
          Dst:             JS_ThrowInterrupted
        - Src:             'quickjs.c:47477,17'
          Dst:             JS_ThrowInternalError
        - Src:             'quickjs.c:47486,17'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:47486,17'
          Dst:             set_value
        - Src:             'quickjs.c:47486,17'
          Dst:             JS_SetProperty
        - Src:             'quickjs.c:47491,26'
          Dst:             lre_get_groupnames
        - Src:             'quickjs.c:47493,22'
          Dst:             JS_NewObjectProto
        - Src:             'quickjs.c:47494,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47498,23'
          Dst:             JS_NewArray
        - Src:             'quickjs.c:47499,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47502,34'
          Dst:             JS_NewObjectProto
        - Src:             'quickjs.c:47503,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47511,28'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:47514,42'
          Dst:             js_dup_shape
        - Src:             'quickjs.c:47514,15'
          Dst:             JS_NewObjectFromShape
        - Src:             'quickjs.c:47516,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47520,13'
          Dst:             expand_fast_array
        - Src:             'quickjs.c:47605,14'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:47533,34'
          Dst:             JS_NewAtom
        - Src:             'quickjs.c:47537,35'
          Dst:             strlen
        - Src:             'quickjs.c:47545,18'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:47548,27'
          Dst:             JS_NewArray
        - Src:             'quickjs.c:47549,25'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47551,25'
          Dst:             JS_DefinePropertyValueUint32
        - Src:             'quickjs.c:47554,25'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47557,25'
          Dst:             JS_DefinePropertyValueUint32
        - Src:             'quickjs.c:47560,25'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47566,26'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:47567,26'
          Dst:             JS_HasProperty
        - Src:             'quickjs.c:47569,64'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:47568,29'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:47570,29'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47575,21'
          Dst:             JS_DefinePropertyValueUint32
        - Src:             'quickjs.c:47583,23'
          Dst:             js_sub_string
        - Src:             'quickjs.c:47584,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47590,22'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:47591,22'
          Dst:             JS_HasProperty
        - Src:             'quickjs.c:47593,48'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:47592,25'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:47595,25'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47599,17'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:47607,17'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:47612,17'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:47621,5'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:47622,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47623,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47624,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47625,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47626,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47627,5'
          Dst:             js_free
    - functionName:    check_regexp_getter
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48098
      functionLinenumberEnd: 48111
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          45
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - JS_IsCFunction
        - find_property_regexp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:48102,11'
          Dst:             find_property_regexp
        - Src:             'quickjs.c:48109,12'
          Dst:             JS_IsCFunction
    - functionName:    find_property_regexp
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48080
      functionLinenumberEnd: 48093
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          83
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - get_shape_prop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:48084,15'
          Dst:             get_shape_prop
    - functionName:    value_buffer_free
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48037
      functionLinenumberEnd: 48044
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          62
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeValue
        - js_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:48039,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48041,9'
          Dst:             js_free
    - functionName:    value_buffer_append
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48047
      functionLinenumberEnd: 48075
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          104
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - JS_FreeValue
        - js_realloc2
        - value_buffer_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:48057,23'
          Dst:             js_realloc2
        - Src:             'quickjs.c:48061,23'
          Dst:             js_realloc2
        - Src:             'quickjs.c:48064,13'
          Dst:             value_buffer_free
        - Src:             'quickjs.c:48065,13'
          Dst:             JS_FreeValue
    - functionName:    js_regexp_replace
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47634
      functionLinenumberEnd: 47746
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         87
      ICount:          464
      EdgeCount:       120
      CyclomaticComplexity: 35
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_SetProperty
        - JS_ThrowInternalError
        - JS_ThrowInterrupted
        - JS_ToLengthFree
        - JS_ToString
        - get_shape_prop
        - js_free
        - js_get_regexp
        - js_malloc
        - js_string_GetSubstitution
        - lre_exec
        - lre_get_alloc_count
        - lre_get_capture_count
        - lre_get_flags
        - lre_get_groupnames
        - max_int
        - set_value
        - string_advance_index
        - string_buffer_concat
        - string_buffer_end
        - string_buffer_free
        - string_buffer_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:47635,20'
          Dst:             js_get_regexp
        - Src:             'quickjs.c:47652,22'
          Dst:             lre_get_groupnames
        - Src:             'quickjs.c:47656,5'
          Dst:             string_buffer_init
        - Src:             'quickjs.c:47659,15'
          Dst:             JS_ToString
        - Src:             'quickjs.c:47660,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47663,16'
          Dst:             lre_get_flags
        - Src:             'quickjs.c:47666,13'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:47666,13'
          Dst:             set_value
        - Src:             'quickjs.c:47666,13'
          Dst:             JS_SetProperty
        - Src:             'quickjs.c:47672,13'
          Dst:             max_int
        - Src:             'quickjs.c:47672,13'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:47672,13'
          Dst:             JS_ToLengthFree
        - Src:             'quickjs.c:47675,19'
          Dst:             lre_get_alloc_count
        - Src:             'quickjs.c:47677,19'
          Dst:             js_malloc
        - Src:             'quickjs.c:47681,21'
          Dst:             lre_get_capture_count
        - Src:             'quickjs.c:47690,19'
          Dst:             lre_exec
        - Src:             'quickjs.c:47696,25'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:47696,25'
          Dst:             set_value
        - Src:             'quickjs.c:47696,25'
          Dst:             JS_SetProperty
        - Src:             'quickjs.c:47701,21'
          Dst:             JS_ThrowInterrupted
        - Src:             'quickjs.c:47703,21'
          Dst:             JS_ThrowInternalError
        - Src:             'quickjs.c:47713,17'
          Dst:             string_buffer_concat
        - Src:             'quickjs.c:47717,17'
          Dst:             js_string_GetSubstitution
        - Src:             'quickjs.c:47726,21'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:47726,21'
          Dst:             set_value
        - Src:             'quickjs.c:47726,21'
          Dst:             JS_SetProperty
        - Src:             'quickjs.c:47732,19'
          Dst:             string_advance_index
        - Src:             'quickjs.c:47736,9'
          Dst:             string_buffer_concat
        - Src:             'quickjs.c:47738,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47739,5'
          Dst:             js_free
        - Src:             'quickjs.c:47740,12'
          Dst:             string_buffer_end
        - Src:             'quickjs.c:47742,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47743,5'
          Dst:             js_free
        - Src:             'quickjs.c:47744,5'
          Dst:             string_buffer_free
    - functionName:    js_is_standard_regexp
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48114
      functionLinenumberEnd: 48151
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          141
      EdgeCount:       41
      CyclomaticComplexity: 14
      functionsReached:
        - JS_IsCFunction
        - JS_IsNumber
        - check_regexp_getter
        - find_property_regexp
        - get_shape_prop
        - js_regexp_exec
        - js_regexp_get_flag
        - js_regexp_get_flags
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:48126,11'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:48129,10'
          Dst:             JS_IsNumber
        - Src:             'quickjs.c:48133,11'
          Dst:             find_property_regexp
        - Src:             'quickjs.c:48138,10'
          Dst:             JS_IsCFunction
        - Src:             'quickjs.c:48138,10'
          Dst:             js_regexp_exec
        - Src:             'quickjs.c:48142,10'
          Dst:             check_regexp_getter
        - Src:             'quickjs.c:48142,10'
          Dst:             js_regexp_get_flags
        - Src:             'quickjs.c:48145,10'
          Dst:             check_regexp_getter
        - Src:             'quickjs.c:48145,10'
          Dst:             js_regexp_get_flag
        - Src:             'quickjs.c:48147,10'
          Dst:             check_regexp_getter
        - Src:             'quickjs.c:48147,10'
          Dst:             js_regexp_get_flag
    - functionName:    js_regexp_get_flags
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47248
      functionLinenumberEnd: 47277
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          80
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - JS_GetPropertyInternal
        - JS_NewStringLen
        - JS_ThrowTypeErrorNotAnObject
        - JS_ToBoolFree
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:47264,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:47267,34'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:47267,15'
          Dst:             JS_ToBoolFree
        - Src:             'quickjs.c:47273,12'
          Dst:             JS_NewStringLen
    - functionName:    js_regexp_get_flag
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47226
      functionLinenumberEnd: 47243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          58
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - JS_ThrowTypeErrorInvalidClass
        - JS_ThrowTypeErrorNotAnObject
        - js_get_regexp
        - js_same_value
        - lre_get_flags
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:47231,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:47233,10'
          Dst:             js_get_regexp
        - Src:             'quickjs.c:47235,13'
          Dst:             js_same_value
        - Src:             'quickjs.c:47238,20'
          Dst:             JS_ThrowTypeErrorInvalidClass
        - Src:             'quickjs.c:47241,13'
          Dst:             lre_get_flags
    - functionName:    value_buffer_init
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48027
      functionLinenumberEnd: 48033
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_regexp_Symbol_split
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48408
      functionLinenumberEnd: 48531
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         83
      ICount:          471
      EdgeCount:       117
      CyclomaticComplexity: 36
      functionsReached:
        - JS_CallConstructor
        - JS_ConcatString3
        - JS_DefinePropertyValueInt64
        - JS_FreeValue
        - JS_GetPropertyInt64
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsNull
        - JS_IsObject
        - JS_IsUndefined
        - JS_NewArray
        - JS_RegExpExec
        - JS_SetProperty
        - JS_SpeciesConstructor
        - JS_ThrowTypeErrorNotAnObject
        - JS_ToLengthFree
        - JS_ToString
        - JS_ToStringFree
        - JS_ToUint32
        - js_get_length64
        - js_sub_string
        - string_advance_index
        - string_indexof_char
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:48418,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:48419,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:48426,11'
          Dst:             JS_ToString
        - Src:             'quickjs.c:48427,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48429,12'
          Dst:             JS_SpeciesConstructor
        - Src:             'quickjs.c:48430,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48432,34'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:48432,13'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:48433,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48436,24'
          Dst:             string_indexof_char
        - Src:             'quickjs.c:48437,24'
          Dst:             string_indexof_char
        - Src:             'quickjs.c:48438,9'
          Dst:             string_indexof_char
        - Src:             'quickjs.c:48439,17'
          Dst:             JS_ConcatString3
        - Src:             'quickjs.c:48440,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48445,16'
          Dst:             JS_CallConstructor
        - Src:             'quickjs.c:48446,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48448,9'
          Dst:             JS_NewArray
        - Src:             'quickjs.c:48449,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48452,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:48455,13'
          Dst:             JS_ToUint32
        - Src:             'quickjs.c:48464,13'
          Dst:             JS_RegExpExec
        - Src:             'quickjs.c:48465,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48467,13'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:48472,13'
          Dst:             JS_SetProperty
        - Src:             'quickjs.c:48474,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48475,13'
          Dst:             JS_RegExpExec
        - Src:             'quickjs.c:48476,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48478,13'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:48481,42'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:48481,17'
          Dst:             JS_ToLengthFree
        - Src:             'quickjs.c:48488,23'
          Dst:             js_sub_string
        - Src:             'quickjs.c:48489,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48491,21'
          Dst:             JS_DefinePropertyValueInt64
        - Src:             'quickjs.c:48497,21'
          Dst:             js_get_length64
        - Src:             'quickjs.c:48500,27'
          Dst:             JS_GetPropertyInt64
        - Src:             'quickjs.c:48501,25'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48503,25'
          Dst:             JS_DefinePropertyValueInt64
        - Src:             'quickjs.c:0,0'
          Dst:             string_advance_index
        - Src:             'quickjs.c:48515,11'
          Dst:             js_sub_string
        - Src:             'quickjs.c:48516,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48518,9'
          Dst:             JS_DefinePropertyValueInt64
        - Src:             'quickjs.c:48522,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48525,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48526,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48527,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48528,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48529,5'
          Dst:             JS_FreeValue
    - functionName:    js_regexp_Symbol_search
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48350
      functionLinenumberEnd: 48404
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          145
      EdgeCount:       37
      CyclomaticComplexity: 12
      functionsReached:
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsNull
        - JS_IsObject
        - JS_RegExpExec
        - JS_SetProperty
        - JS_ThrowTypeErrorNotAnObject
        - JS_ToString
        - js_same_value
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:48354,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:48355,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:48360,11'
          Dst:             JS_ToString
        - Src:             'quickjs.c:48361,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48364,25'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:48365,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48368,10'
          Dst:             js_same_value
        - Src:             'quickjs.c:48369,13'
          Dst:             JS_SetProperty
        - Src:             'quickjs.c:48373,14'
          Dst:             JS_RegExpExec
        - Src:             'quickjs.c:48374,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48376,24'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:48377,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48379,9'
          Dst:             js_same_value
        - Src:             'quickjs.c:48380,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48382,13'
          Dst:             JS_SetProperty
        - Src:             'quickjs.c:48387,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48388,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48390,9'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:48393,17'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:48394,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48399,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48400,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48401,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48402,5'
          Dst:             JS_FreeValue
    - functionName:    js_regexp_Symbol_matchAll
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47952
      functionLinenumberEnd: 48015
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          219
      EdgeCount:       40
      CyclomaticComplexity: 13
      functionsReached:
        - JS_CallConstructor
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsObject
        - JS_NewObjectClass
        - JS_SetOpaque
        - JS_SetProperty
        - JS_SpeciesConstructor
        - JS_ThrowTypeErrorNotAnObject
        - JS_ToLengthFree
        - JS_ToString
        - JS_ToStringFree
        - __JS_NewFloat64
        - js_malloc
        - string_indexof_char
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:47961,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:47962,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:47969,9'
          Dst:             JS_ToString
        - Src:             'quickjs.c:47970,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47972,9'
          Dst:             JS_SpeciesConstructor
        - Src:             'quickjs.c:47973,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47975,34'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:47975,13'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:47976,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47980,15'
          Dst:             JS_CallConstructor
        - Src:             'quickjs.c:47981,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47984,25'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:47983,9'
          Dst:             JS_ToLengthFree
        - Src:             'quickjs.c:47987,24'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:47986,9'
          Dst:             JS_SetProperty
        - Src:             'quickjs.c:47990,12'
          Dst:             JS_NewObjectClass
        - Src:             'quickjs.c:47991,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47993,10'
          Dst:             js_malloc
        - Src:             'quickjs.c:47999,18'
          Dst:             string_indexof_char
        - Src:             'quickjs.c:48000,20'
          Dst:             string_indexof_char
        - Src:             'quickjs.c:48001,20'
          Dst:             string_indexof_char
        - Src:             'quickjs.c:48003,5'
          Dst:             JS_SetOpaque
        - Src:             'quickjs.c:48005,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48006,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48009,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48010,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48011,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48012,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48013,5'
          Dst:             JS_FreeValue
    - functionName:    js_regexp_Symbol_match
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47785
      functionLinenumberEnd: 47864
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          266
      EdgeCount:       65
      CyclomaticComplexity: 20
      functionsReached:
        - JS_DefinePropertyValueInt64
        - JS_FreeValue
        - JS_GetPropertyInt64
        - JS_GetPropertyInternal
        - JS_IsEmptyString
        - JS_IsException
        - JS_IsNull
        - JS_IsObject
        - JS_NewArray
        - JS_RegExpExec
        - JS_SetProperty
        - JS_ThrowTypeErrorNotAnObject
        - JS_ToLengthFree
        - JS_ToString
        - JS_ToStringFree
        - __JS_NewFloat64
        - string_advance_index
        - string_indexof_char
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:47792,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:47793,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:47799,9'
          Dst:             JS_ToString
        - Src:             'quickjs.c:47800,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47803,13'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:47804,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47806,13'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:47807,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47811,21'
          Dst:             string_indexof_char
        - Src:             'quickjs.c:47813,13'
          Dst:             JS_RegExpExec
        - Src:             'quickjs.c:47815,24'
          Dst:             string_indexof_char
        - Src:             'quickjs.c:47816,24'
          Dst:             string_indexof_char
        - Src:             'quickjs.c:47818,13'
          Dst:             JS_SetProperty
        - Src:             'quickjs.c:47820,13'
          Dst:             JS_NewArray
        - Src:             'quickjs.c:47821,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47825,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47826,22'
          Dst:             JS_RegExpExec
        - Src:             'quickjs.c:47827,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47829,17'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:47831,45'
          Dst:             JS_GetPropertyInt64
        - Src:             'quickjs.c:47831,24'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:47832,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47834,23'
          Dst:             JS_IsEmptyString
        - Src:             'quickjs.c:47835,17'
          Dst:             JS_DefinePropertyValueInt64
        - Src:             'quickjs.c:47840,37'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:47839,21'
          Dst:             JS_ToLengthFree
        - Src:             'quickjs.c:47843,29'
          Dst:             string_advance_index
        - Src:             'quickjs.c:47844,64'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:47844,21'
          Dst:             JS_SetProperty
        - Src:             'quickjs.c:47825,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47826,22'
          Dst:             JS_RegExpExec
        - Src:             'quickjs.c:47827,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47849,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47853,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47854,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47855,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47859,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47860,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47861,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47862,5'
          Dst:             JS_FreeValue
    - functionName:    js_regexp_Symbol_replace
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48155
      functionLinenumberEnd: 48346
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         125
      ICount:          767
      EdgeCount:       173
      CyclomaticComplexity: 50
      functionsReached:
        - JS_DefinePropertyValueInt64
        - JS_DupValue
        - JS_FreeValue
        - JS_GetPropertyInt64
        - JS_GetPropertyInternal
        - JS_IsEmptyString
        - JS_IsException
        - JS_IsFunction
        - JS_IsNull
        - JS_IsObject
        - JS_IsUndefined
        - JS_NewArray
        - JS_RegExpExec
        - JS_SetProperty
        - JS_ThrowTypeErrorNotAnObject
        - JS_ToLengthFree
        - JS_ToObject
        - JS_ToString
        - JS_ToStringFree
        - __JS_NewFloat64
        - js_function_apply
        - js_get_length32
        - js_is_standard_regexp
        - js_regexp_replace
        - js_string_GetSubstitution
        - string_advance_index
        - string_buffer_concat
        - string_buffer_concat_value
        - string_buffer_end
        - string_buffer_free
        - string_buffer_init
        - string_indexof_char
        - value_buffer_append
        - value_buffer_free
        - value_buffer_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:48167,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:48168,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:48170,5'
          Dst:             string_buffer_init
        - Src:             'quickjs.c:48171,5'
          Dst:             value_buffer_init
        - Src:             'quickjs.c:48180,11'
          Dst:             JS_ToString
        - Src:             'quickjs.c:48181,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48185,25'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:48187,19'
          Dst:             JS_ToString
        - Src:             'quickjs.c:48188,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48192,31'
          Dst:             js_is_standard_regexp
        - Src:             'quickjs.c:48194,15'
          Dst:             js_regexp_replace
        - Src:             'quickjs.c:48195,14'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:48199,13'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:48200,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48202,13'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:48203,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48208,24'
          Dst:             string_indexof_char
        - Src:             'quickjs.c:48210,24'
          Dst:             string_indexof_char
        - Src:             'quickjs.c:48211,24'
          Dst:             string_indexof_char
        - Src:             'quickjs.c:48212,13'
          Dst:             JS_SetProperty
        - Src:             'quickjs.c:48218,18'
          Dst:             JS_RegExpExec
        - Src:             'quickjs.c:48219,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48221,13'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:48223,13'
          Dst:             value_buffer_append
        - Src:             'quickjs.c:48227,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48228,40'
          Dst:             JS_GetPropertyInt64
        - Src:             'quickjs.c:48228,19'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:48229,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48231,13'
          Dst:             JS_IsEmptyString
        - Src:             'quickjs.c:48234,50'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:48234,17'
          Dst:             JS_ToLengthFree
        - Src:             'quickjs.c:48236,25'
          Dst:             string_advance_index
        - Src:             'quickjs.c:48237,60'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:48237,17'
          Dst:             JS_SetProperty
        - Src:             'quickjs.c:48218,18'
          Dst:             JS_RegExpExec
        - Src:             'quickjs.c:48219,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48245,13'
          Dst:             js_get_length32
        - Src:             'quickjs.c:48245,13'
          Dst:             js_get_length32
        - Src:             'quickjs.c:48247,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48248,40'
          Dst:             JS_GetPropertyInt64
        - Src:             'quickjs.c:48248,19'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:48249,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48251,45'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:48251,13'
          Dst:             JS_ToLengthFree
        - Src:             'quickjs.c:48259,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48260,15'
          Dst:             JS_NewArray
        - Src:             'quickjs.c:48261,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48263,54'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:48263,13'
          Dst:             JS_DefinePropertyValueInt64
        - Src:             'quickjs.c:48268,20'
          Dst:             JS_GetPropertyInt64
        - Src:             'quickjs.c:48269,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48271,18'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:48272,24'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:48273,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48276,17'
          Dst:             JS_DefinePropertyValueInt64
        - Src:             'quickjs.c:48280,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48281,25'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:48282,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48285,17'
          Dst:             JS_DefinePropertyValueInt64
        - Src:             'quickjs.c:48287,60'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:48287,17'
          Dst:             JS_DefinePropertyValueInt64
        - Src:             'quickjs.c:48289,18'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:48290,64'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:48290,21'
          Dst:             JS_DefinePropertyValueInt64
        - Src:             'quickjs.c:48295,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48296,44'
          Dst:             js_function_apply
        - Src:             'quickjs.c:48296,23'
          Dst:             JS_ToStringFree
        - Src:             'quickjs.c:48302,18'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:48303,34'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:48304,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48309,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48311,13'
          Dst:             string_buffer_init
        - Src:             'quickjs.c:48312,19'
          Dst:             js_string_GetSubstitution
        - Src:             'quickjs.c:48315,23'
          Dst:             string_buffer_end
        - Src:             'quickjs.c:48316,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48320,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48323,13'
          Dst:             string_buffer_concat
        - Src:             'quickjs.c:48324,13'
          Dst:             string_buffer_concat_value
        - Src:             'quickjs.c:48328,5'
          Dst:             string_buffer_concat
        - Src:             'quickjs.c:48329,11'
          Dst:             string_buffer_end
        - Src:             'quickjs.c:48335,5'
          Dst:             string_buffer_free
        - Src:             'quickjs.c:48337,5'
          Dst:             value_buffer_free
        - Src:             'quickjs.c:48338,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48339,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48340,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48341,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48342,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48343,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:48344,5'
          Dst:             JS_FreeValue
    - functionName:    js_regexp_toString
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47281
      functionLinenumberEnd: 47302
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          65
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_GetPropertyInternal
        - JS_IsObject
        - JS_ThrowTypeErrorNotAnObject
        - string_buffer_concat_value_free
        - string_buffer_end
        - string_buffer_free
        - string_buffer_init
        - string_buffer_putc8
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:47285,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:47286,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:47288,5'
          Dst:             string_buffer_init
        - Src:             'quickjs.c:47289,5'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:47290,15'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:47291,9'
          Dst:             string_buffer_concat_value_free
        - Src:             'quickjs.c:47293,5'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:47294,13'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:47295,9'
          Dst:             string_buffer_concat_value_free
        - Src:             'quickjs.c:47297,12'
          Dst:             string_buffer_end
        - Src:             'quickjs.c:47300,5'
          Dst:             string_buffer_free
    - functionName:    js_regexp_test
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47771
      functionLinenumberEnd: 47781
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_IsNull
        - JS_RegExpExec
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:47775,11'
          Dst:             JS_RegExpExec
        - Src:             'quickjs.c:47776,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47778,12'
          Dst:             JS_IsNull
        - Src:             'quickjs.c:47779,5'
          Dst:             JS_FreeValue
    - functionName:    js_regexp_compile
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47117
      functionLinenumberEnd: 47157
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          131
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - JS_AtomToString
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_IsUndefined
        - JS_SetProperty
        - JS_ThrowTypeError
        - JS_ToString
        - js_compile_regexp
        - js_get_regexp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:47122,10'
          Dst:             js_get_regexp
        - Src:             'quickjs.c:47127,11'
          Dst:             js_get_regexp
        - Src:             'quickjs.c:47129,14'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:47130,20'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:47131,19'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:47132,14'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:47135,13'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:47136,23'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:47138,23'
          Dst:             JS_ToString
        - Src:             'quickjs.c:47139,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47141,14'
          Dst:             js_compile_regexp
        - Src:             'quickjs.c:47142,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47145,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47146,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47149,9'
          Dst:             JS_SetProperty
        - Src:             'quickjs.c:47152,12'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:47154,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47155,5'
          Dst:             JS_FreeValue
    - functionName:    js_compile_regexp
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46871
      functionLinenumberEnd: 46945
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          169
      EdgeCount:       44
      CyclomaticComplexity: 10
      functionsReached:
        - JS_FreeCString
        - JS_IsUndefined
        - JS_ThrowSyntaxError
        - JS_ToCStringLen
        - JS_ToCStringLen2
        - js_free
        - js_new_string8_len
        - lre_compile
      functionUses:    3
      BranchProfiles:
        - Branch String:   'quickjs.c:46887,13'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:46881,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:46882,15'
          Dst:             JS_ToCStringLen
        - Src:             'quickjs.c:46922,9'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:46917,17'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:46922,9'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:46928,16'
          Dst:             JS_ThrowSyntaxError
        - Src:             'quickjs.c:46931,11'
          Dst:             JS_ToCStringLen2
        - Src:             'quickjs.c:46934,23'
          Dst:             lre_compile
        - Src:             'quickjs.c:46936,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:46938,9'
          Dst:             JS_ThrowSyntaxError
        - Src:             'quickjs.c:46942,11'
          Dst:             js_new_string8_len
        - Src:             'quickjs.c:46943,5'
          Dst:             js_free
    - functionName:    js_regexp_get_source
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47160
      functionLinenumberEnd: 47223
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          181
      EdgeCount:       48
      CyclomaticComplexity: 12
      functionsReached:
        - JS_ThrowTypeErrorNotAnObject
        - js_get_regexp
        - js_new_string8
        - js_same_value
        - string_buffer_end
        - string_buffer_init2
        - string_buffer_putc16
        - string_get
      functionUses:    0
      BranchProfiles:
        - Branch String:   'quickjs.c:47188,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:47167,16'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:47169,9'
          Dst:             js_same_value
        - Src:             'quickjs.c:47172,10'
          Dst:             js_get_regexp
        - Src:             'quickjs.c:47180,16'
          Dst:             js_new_string8
        - Src:             'quickjs.c:47182,5'
          Dst:             string_buffer_init2
        - Src:             'quickjs.c:47188,21'
          Dst:             string_get
        - Src:             'quickjs.c:47191,22'
          Dst:             string_get
        - Src:             'quickjs.c:47198,30'
          Dst:             string_get
        - Src:             'quickjs.c:47218,9'
          Dst:             string_buffer_putc16
        - Src:             'quickjs.c:0,0'
          Dst:             string_buffer_putc16
        - Src:             'quickjs.c:47222,12'
          Dst:             string_buffer_end
    - functionName:    js_get_this
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41270
      functionLinenumberEnd: 41271
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:41271,12'
          Dst:             JS_DupValue
    - functionName:    js_regexp_escape
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47327
      functionLinenumberEnd: 47377
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         52
      ICount:          232
      EdgeCount:       72
      CyclomaticComplexity: 22
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_IsString
        - JS_ThrowTypeError
        - JS_ToString
        - is_surrogate
        - lre_is_space
        - memchr
        - snprintf
        - string_buffer_end
        - string_buffer_init2
        - string_buffer_putc
        - string_buffer_putc8
        - string_buffer_puts8
        - string_getc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:47335,10'
          Dst:             JS_IsString
        - Src:             'quickjs.c:47336,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:47337,11'
          Dst:             JS_ToString
        - Src:             'quickjs.c:47338,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47341,5'
          Dst:             string_buffer_init2
        - Src:             'quickjs.c:47344,13'
          Dst:             string_getc
        - Src:             'quickjs.c:47347,17'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:47348,17'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:47358,24'
          Dst:             memchr
        - Src:             'quickjs.c:47361,17'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:47363,13'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:47366,13'
          Dst:             snprintf
        - Src:             'quickjs.c:47367,13'
          Dst:             string_buffer_puts8
        - Src:             'quickjs.c:47368,20'
          Dst:             is_surrogate
        - Src:             'quickjs.c:47368,39'
          Dst:             lre_is_space
        - Src:             'quickjs.c:47369,13'
          Dst:             snprintf
        - Src:             'quickjs.c:47370,13'
          Dst:             string_buffer_puts8
        - Src:             'quickjs.c:47372,13'
          Dst:             string_buffer_putc
        - Src:             'quickjs.c:47375,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47376,12'
          Dst:             string_buffer_end
    - functionName:    js_regexp_set_internal
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46980
      functionLinenumberEnd: 47002
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_DefinePropertyValue
        - JS_FreeValue
        - JS_ThrowTypeError
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:46987,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:46988,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:46989,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:46990,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:46999,5'
          Dst:             JS_DefinePropertyValue
    - functionName:    js_UTF32_compare
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45959
      functionLinenumberEnd: 45975
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          64
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - min_int
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:45961,11'
          Dst:             min_int
    - functionName:    JS_ToUTF32String
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45841
      functionLinenumberEnd: 45866
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          72
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_ToString
        - js_malloc
        - max_int
        - string_getc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:45847,11'
          Dst:             JS_ToString
        - Src:             'quickjs.c:45848,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45853,43'
          Dst:             max_int
        - Src:             'quickjs.c:45853,11'
          Dst:             js_malloc
        - Src:             'quickjs.c:45859,20'
          Dst:             string_getc
        - Src:             'quickjs.c:0,0'
          Dst:             JS_FreeValue
    - functionName:    JS_NewUTF32String
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45869
      functionLinenumberEnd: 45882
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          66
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - string_buffer_end
        - string_buffer_free
        - string_buffer_init
        - string_buffer_putc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:45872,9'
          Dst:             string_buffer_init
        - Src:             'quickjs.c:45875,13'
          Dst:             string_buffer_putc
        - Src:             'quickjs.c:45878,12'
          Dst:             string_buffer_end
        - Src:             'quickjs.c:45880,5'
          Dst:             string_buffer_free
    - functionName:    js_string_normalize1
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45887
      functionLinenumberEnd: 45901
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          44
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_ToUTF32String
        - js_free
        - js_realloc_rt
        - unicode_normalize
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:45891,15'
          Dst:             JS_ToUTF32String
        - Src:             'quickjs.c:45894,15'
          Dst:             unicode_normalize
        - Src:             'quickjs.c:45894,15'
          Dst:             js_realloc_rt
        - Src:             'quickjs.c:45896,5'
          Dst:             js_free
    - functionName:    js_string_localeCompare
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45979
      functionLinenumberEnd: 46009
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          78
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_ToString
        - JS_ToStringCheckObject
        - js_UTF32_compare
        - js_free
        - js_string_normalize1
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:45984,9'
          Dst:             JS_ToStringCheckObject
        - Src:             'quickjs.c:45985,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45987,9'
          Dst:             JS_ToString
        - Src:             'quickjs.c:45988,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45989,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45992,13'
          Dst:             js_string_normalize1
        - Src:             'quickjs.c:45993,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45995,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45999,13'
          Dst:             js_string_normalize1
        - Src:             'quickjs.c:46000,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:46002,9'
          Dst:             js_free
        - Src:             'quickjs.c:46005,11'
          Dst:             js_UTF32_compare
        - Src:             'quickjs.c:46006,5'
          Dst:             js_free
        - Src:             'quickjs.c:46007,5'
          Dst:             js_free
    - functionName:    js_string_normalize
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45905
      functionLinenumberEnd: 45954
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          155
      EdgeCount:       42
      CyclomaticComplexity: 13
      functionsReached:
        - JS_FreeCString
        - JS_FreeValue
        - JS_IsException
        - JS_IsUndefined
        - JS_NewUTF32String
        - JS_ThrowRangeError
        - JS_ToCStringLen
        - JS_ToStringCheckObject
        - js_free
        - js_string_normalize1
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:45913,11'
          Dst:             JS_ToStringCheckObject
        - Src:             'quickjs.c:45914,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:45917,22'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:45920,16'
          Dst:             JS_ToCStringLen
        - Src:             'quickjs.c:45938,13'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:45939,13'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:45941,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45944,9'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:45947,15'
          Dst:             js_string_normalize1
        - Src:             'quickjs.c:45948,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:45951,11'
          Dst:             JS_NewUTF32String
        - Src:             'quickjs.c:45952,5'
          Dst:             js_free
    - functionName:    js_string_define_own_property
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44516
      functionLinenumberEnd: 44549
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          98
      EdgeCount:       30
      CyclomaticComplexity: 10
      functionsReached:
        - JS_DefineProperty
        - JS_ThrowTypeErrorOrFalse
        - __JS_AtomIsTaggedInt
        - __JS_AtomToUInt32
        - check_define_prop_flags
        - string_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44521,9'
          Dst:             __JS_AtomIsTaggedInt
        - Src:             'quickjs.c:44522,15'
          Dst:             __JS_AtomToUInt32
        - Src:             'quickjs.c:44529,14'
          Dst:             check_define_prop_flags
        - Src:             'quickjs.c:44538,17'
          Dst:             string_get
        - Src:             'quickjs.c:44538,40'
          Dst:             string_get
        - Src:             'quickjs.c:44540,24'
          Dst:             JS_ThrowTypeErrorOrFalse
        - Src:             'quickjs.c:44546,16'
          Dst:             JS_DefineProperty
    - functionName:    js_string_delete_property
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44553
      functionLinenumberEnd: 44563
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          34
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - __JS_AtomIsTaggedInt
        - __JS_AtomToUInt32
        - js_string_obj_get_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44556,9'
          Dst:             __JS_AtomIsTaggedInt
        - Src:             'quickjs.c:44557,15'
          Dst:             __JS_AtomToUInt32
        - Src:             'quickjs.c:44558,19'
          Dst:             js_string_obj_get_length
    - functionName:    js_string_get_own_property
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44485
      functionLinenumberEnd: 44509
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          77
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - __JS_AtomIsTaggedInt
        - __JS_AtomToUInt32
        - js_new_string_char
        - string_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44491,9'
          Dst:             __JS_AtomIsTaggedInt
        - Src:             'quickjs.c:44495,19'
          Dst:             __JS_AtomToUInt32
        - Src:             'quickjs.c:44498,26'
          Dst:             string_get
        - Src:             'quickjs.c:44500,35'
          Dst:             js_new_string_char
    - functionName:    BC_add_object_ref1
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38140
      functionLinenumberEnd: 38149
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          46
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - js_resize_array
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:38142,13'
          Dst:             js_resize_array
    - functionName:    BC_add_object_ref
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38152
      functionLinenumberEnd: 38153
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BC_add_object_ref1
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:38153,12'
          Dst:             BC_add_object_ref1
    - functionName:    bc_idx_to_atom
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37941
      functionLinenumberEnd: 37960
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          68
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_DupAtom
        - JS_ThrowSyntaxError
        - __JS_AtomIsTaggedInt
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:37944,9'
          Dst:             __JS_AtomIsTaggedInt
        - Src:             'quickjs.c:37947,16'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:37951,13'
          Dst:             JS_ThrowSyntaxError
        - Src:             'quickjs.c:37956,16'
          Dst:             JS_DupAtom
    - functionName:    bc_get_buf
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37930
      functionLinenumberEnd: 37938
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          43
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - bc_read_error_end
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:37933,20'
          Dst:             bc_read_error_end
    - functionName:    bc_read_error_end
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37830
      functionLinenumberEnd: 37834
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_ThrowSyntaxError
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:37832,9'
          Dst:             JS_ThrowSyntaxError
    - functionName:    JS_ReadFunctionBytecode
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38029
      functionLinenumberEnd: 38083
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          142
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - JS_DupAtom
        - bc_get_buf
        - bc_idx_to_atom
        - bc_read_error_end
        - get_u32
        - put_u32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:38038,20'
          Dst:             bc_read_error_end
        - Src:             'quickjs.c:38043,13'
          Dst:             bc_get_buf
        - Src:             'quickjs.c:38061,19'
          Dst:             get_u32
        - Src:             'quickjs.c:38064,17'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:38066,21'
          Dst:             bc_idx_to_atom
        - Src:             'quickjs.c:38071,17'
          Dst:             put_u32
    - functionName:    bc_get_leb128_int
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37914
      functionLinenumberEnd: 37915
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bc_get_leb128
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:37915,12'
          Dst:             bc_get_leb128
    - functionName:    bc_get_leb128
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37893
      functionLinenumberEnd: 37900
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - bc_read_error_end
        - get_leb128
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:37895,11'
          Dst:             get_leb128
        - Src:             'quickjs.c:37897,16'
          Dst:             bc_read_error_end
    - functionName:    bc_get_leb128_u16
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37919
      functionLinenumberEnd: 37927
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - bc_get_leb128
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:37921,9'
          Dst:             bc_get_leb128
    - functionName:    bc_get_atom
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37963
      functionLinenumberEnd: 37973
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          41
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - __JS_AtomFromUInt32
        - bc_get_leb128
        - bc_idx_to_atom
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:37965,9'
          Dst:             bc_get_leb128
        - Src:             'quickjs.c:37968,18'
          Dst:             __JS_AtomFromUInt32
        - Src:             'quickjs.c:37971,16'
          Dst:             bc_idx_to_atom
    - functionName:    bc_get_flags
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38019
      functionLinenumberEnd: 38024
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    20
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bc_get_u16
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37848
      functionLinenumberEnd: 37860
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - bc_read_error_end
        - get_u16
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:37852,16'
          Dst:             bc_read_error_end
        - Src:             'quickjs.c:37854,9'
          Dst:             get_u16
    - functionName:    JS_ReadBigInt
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38086
      functionLinenumberEnd: 38135
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         27
      ICount:          148
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - JS_CompactBigInt
        - JS_FreeValue
        - __JS_NewShortBigInt
        - bc_get_leb128
        - bc_get_u64
        - bc_get_u8
        - js_bigint_new
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:38093,9'
          Dst:             bc_get_leb128
        - Src:             'quickjs.c:38099,16'
          Dst:             __JS_NewShortBigInt
        - Src:             'quickjs.c:38101,9'
          Dst:             js_bigint_new
        - Src:             'quickjs.c:38109,13'
          Dst:             bc_get_u64
        - Src:             'quickjs.c:38119,17'
          Dst:             bc_get_u8
        - Src:             'quickjs.c:38131,12'
          Dst:             JS_CompactBigInt
        - Src:             'quickjs.c:38133,5'
          Dst:             JS_FreeValue
    - functionName:    bc_get_u64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37878
      functionLinenumberEnd: 37890
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - bc_read_error_end
        - get_u64
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:37882,16'
          Dst:             bc_read_error_end
        - Src:             'quickjs.c:37884,9'
          Dst:             get_u64
    - functionName:    bc_get_u8
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37838
      functionLinenumberEnd: 37845
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - bc_read_error_end
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:37841,16'
          Dst:             bc_read_error_end
    - functionName:    JS_ReadObjectValue
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38706
      functionLinenumberEnd: 38724
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          56
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - BC_add_object_ref
        - JS_FreeValue
        - JS_IsException
        - JS_ReadObjectRec
        - JS_ToObject
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:38710,11'
          Dst:             JS_ReadObjectRec
        - Src:             'quickjs.c:38711,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:38713,11'
          Dst:             JS_ToObject
        - Src:             'quickjs.c:38714,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:38716,9'
          Dst:             BC_add_object_ref
        - Src:             'quickjs.c:38718,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:38721,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:38722,5'
          Dst:             JS_FreeValue
    - functionName:    JS_ReadObjectRec
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38727
      functionLinenumberEnd: 38837
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         53
      ICount:          315
      EdgeCount:       64
      CyclomaticComplexity: 13
      functionsReached:
        - JS_DupValue
        - JS_ReadArray
        - JS_ReadArrayBuffer
        - JS_ReadBigInt
        - JS_ReadDate
        - JS_ReadFunctionTag
        - JS_ReadModule
        - JS_ReadObjectTag
        - JS_ReadObjectValue
        - JS_ReadSharedArrayBuffer
        - JS_ReadString
        - JS_ReadTypedArray
        - JS_ThrowStackOverflow
        - JS_ThrowSyntaxError
        - __JS_NewFloat64
        - bc_get_leb128
        - bc_get_sleb128
        - bc_get_u64
        - bc_get_u8
        - js_check_stack_overflow
      functionUses:    10
      BranchProfiles:
        - Branch String:   'quickjs.c:38740,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:38732,9'
          Dst:             js_check_stack_overflow
        - Src:             'quickjs.c:38733,16'
          Dst:             JS_ThrowStackOverflow
        - Src:             'quickjs.c:38735,9'
          Dst:             bc_get_u8
        - Src:             'quickjs.c:38754,17'
          Dst:             bc_get_sleb128
        - Src:             'quickjs.c:38763,17'
          Dst:             bc_get_u64
        - Src:             'quickjs.c:38766,19'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:38772,17'
          Dst:             JS_ReadString
        - Src:             'quickjs.c:38781,15'
          Dst:             JS_ReadFunctionTag
        - Src:             'quickjs.c:38786,15'
          Dst:             JS_ReadModule
        - Src:             'quickjs.c:38789,15'
          Dst:             JS_ReadObjectTag
        - Src:             'quickjs.c:38793,15'
          Dst:             JS_ReadArray
        - Src:             'quickjs.c:38796,15'
          Dst:             JS_ReadTypedArray
        - Src:             'quickjs.c:38799,15'
          Dst:             JS_ReadArrayBuffer
        - Src:             'quickjs.c:38804,15'
          Dst:             JS_ReadSharedArrayBuffer
        - Src:             'quickjs.c:38807,15'
          Dst:             JS_ReadDate
        - Src:             'quickjs.c:38810,15'
          Dst:             JS_ReadObjectValue
        - Src:             'quickjs.c:38813,15'
          Dst:             JS_ReadBigInt
        - Src:             'quickjs.c:38819,24'
          Dst:             JS_ThrowSyntaxError
        - Src:             'quickjs.c:38820,17'
          Dst:             bc_get_leb128
        - Src:             'quickjs.c:38824,24'
          Dst:             JS_ThrowSyntaxError
        - Src:             'quickjs.c:38827,19'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:38832,16'
          Dst:             JS_ThrowSyntaxError
    - functionName:    bc_get_sleb128
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37903
      functionLinenumberEnd: 37910
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - bc_read_error_end
        - get_sleb128
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:37905,11'
          Dst:             get_sleb128
        - Src:             'quickjs.c:37907,16'
          Dst:             bc_read_error_end
    - functionName:    JS_ReadString
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37976
      functionLinenumberEnd: 38016
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          85
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached:
        - JS_ThrowInternalError
        - bc_get_leb128
        - bc_read_error_end
        - js_alloc_string
        - js_free_string
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:37982,9'
          Dst:             bc_get_leb128
        - Src:             'quickjs.c:37987,9'
          Dst:             JS_ThrowInternalError
        - Src:             'quickjs.c:37990,9'
          Dst:             js_alloc_string
        - Src:             'quickjs.c:37997,9'
          Dst:             bc_read_error_end
        - Src:             'quickjs.c:37998,9'
          Dst:             js_free_string
    - functionName:    JS_ReadFunctionTag
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38157
      functionLinenumberEnd: 38358
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         113
      ICount:          667
      EdgeCount:       160
      CyclomaticComplexity: 49
      functionsReached:
        - JS_DupContext
        - JS_FreeValue
        - JS_IsException
        - JS_ReadFunctionBytecode
        - JS_ReadObjectRec
        - JS_ThrowOutOfMemory
        - add_gc_object
        - bc_get_atom
        - bc_get_buf
        - bc_get_flags
        - bc_get_leb128_int
        - bc_get_leb128_u16
        - bc_get_u16
        - bc_get_u8
        - js_mallocz
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:38172,9'
          Dst:             bc_get_u16
        - Src:             'quickjs.c:38175,24'
          Dst:             bc_get_flags
        - Src:             'quickjs.c:38176,36'
          Dst:             bc_get_flags
        - Src:             'quickjs.c:38177,39'
          Dst:             bc_get_flags
        - Src:             'quickjs.c:38178,27'
          Dst:             bc_get_flags
        - Src:             'quickjs.c:38179,20'
          Dst:             bc_get_flags
        - Src:             'quickjs.c:38180,29'
          Dst:             bc_get_flags
        - Src:             'quickjs.c:38181,29'
          Dst:             bc_get_flags
        - Src:             'quickjs.c:38182,24'
          Dst:             bc_get_flags
        - Src:             'quickjs.c:38183,28'
          Dst:             bc_get_flags
        - Src:             'quickjs.c:38184,20'
          Dst:             bc_get_flags
        - Src:             'quickjs.c:38185,37'
          Dst:             bc_get_flags
        - Src:             'quickjs.c:38187,9'
          Dst:             bc_get_u8
        - Src:             'quickjs.c:38190,9'
          Dst:             bc_get_atom
        - Src:             'quickjs.c:38192,9'
          Dst:             bc_get_leb128_u16
        - Src:             'quickjs.c:38194,9'
          Dst:             bc_get_leb128_u16
        - Src:             'quickjs.c:38196,9'
          Dst:             bc_get_leb128_u16
        - Src:             'quickjs.c:38198,9'
          Dst:             bc_get_leb128_u16
        - Src:             'quickjs.c:38200,9'
          Dst:             bc_get_leb128_u16
        - Src:             'quickjs.c:38202,9'
          Dst:             bc_get_leb128_int
        - Src:             'quickjs.c:38204,9'
          Dst:             bc_get_leb128_int
        - Src:             'quickjs.c:38206,9'
          Dst:             bc_get_leb128_int
        - Src:             'quickjs.c:38208,9'
          Dst:             bc_get_leb128_int
        - Src:             'quickjs.c:38228,16'
          Dst:             JS_ThrowOutOfMemory
        - Src:             'quickjs.c:38230,9'
          Dst:             js_mallocz
        - Src:             'quickjs.c:38246,5'
          Dst:             add_gc_object
        - Src:             'quickjs.c:38263,17'
          Dst:             bc_get_atom
        - Src:             'quickjs.c:38265,17'
          Dst:             bc_get_leb128_int
        - Src:             'quickjs.c:38268,17'
          Dst:             bc_get_leb128_u16
        - Src:             'quickjs.c:38270,17'
          Dst:             bc_get_u8
        - Src:             'quickjs.c:38273,28'
          Dst:             bc_get_flags
        - Src:             'quickjs.c:38274,28'
          Dst:             bc_get_flags
        - Src:             'quickjs.c:38275,30'
          Dst:             bc_get_flags
        - Src:             'quickjs.c:38276,31'
          Dst:             bc_get_flags
        - Src:             'quickjs.c:38277,29'
          Dst:             bc_get_flags
        - Src:             'quickjs.c:38289,17'
          Dst:             bc_get_atom
        - Src:             'quickjs.c:38291,17'
          Dst:             bc_get_leb128_int
        - Src:             'quickjs.c:38294,17'
          Dst:             bc_get_u16
        - Src:             'quickjs.c:38297,32'
          Dst:             bc_get_flags
        - Src:             'quickjs.c:38298,28'
          Dst:             bc_get_flags
        - Src:             'quickjs.c:38299,30'
          Dst:             bc_get_flags
        - Src:             'quickjs.c:38300,28'
          Dst:             bc_get_flags
        - Src:             'quickjs.c:38309,13'
          Dst:             JS_ReadFunctionBytecode
        - Src:             'quickjs.c:38316,13'
          Dst:             bc_get_atom
        - Src:             'quickjs.c:38321,13'
          Dst:             bc_get_leb128_int
        - Src:             'quickjs.c:38324,36'
          Dst:             js_mallocz
        - Src:             'quickjs.c:38327,17'
          Dst:             bc_get_buf
        - Src:             'quickjs.c:38330,13'
          Dst:             bc_get_leb128_int
        - Src:             'quickjs.c:38334,31'
          Dst:             js_mallocz
        - Src:             'quickjs.c:38337,17'
          Dst:             bc_get_buf
        - Src:             'quickjs.c:38346,19'
          Dst:             JS_ReadObjectRec
        - Src:             'quickjs.c:38347,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:38353,16'
          Dst:             JS_DupContext
        - Src:             'quickjs.c:38356,5'
          Dst:             JS_FreeValue
    - functionName:    JS_ReadModule
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38361
      functionLinenumberEnd: 38472
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         89
      ICount:          437
      EdgeCount:       126
      CyclomaticComplexity: 39
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_NewModuleValue
        - JS_ReadObjectRec
        - bc_get_atom
        - bc_get_leb128_int
        - bc_get_u8
        - js_mallocz
        - js_new_module_def
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:38369,9'
          Dst:             bc_get_atom
        - Src:             'quickjs.c:38374,9'
          Dst:             js_new_module_def
        - Src:             'quickjs.c:38377,11'
          Dst:             JS_NewModuleValue
        - Src:             'quickjs.c:38378,9'
          Dst:             bc_get_leb128_int
        - Src:             'quickjs.c:38382,33'
          Dst:             js_mallocz
        - Src:             'quickjs.c:38388,17'
          Dst:             bc_get_atom
        - Src:             'quickjs.c:38390,19'
          Dst:             JS_ReadObjectRec
        - Src:             'quickjs.c:38391,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:38397,9'
          Dst:             bc_get_leb128_int
        - Src:             'quickjs.c:38401,29'
          Dst:             js_mallocz
        - Src:             'quickjs.c:38406,17'
          Dst:             bc_get_u8
        - Src:             'quickjs.c:38410,21'
          Dst:             bc_get_leb128_int
        - Src:             'quickjs.c:38413,21'
          Dst:             bc_get_leb128_int
        - Src:             'quickjs.c:38415,21'
          Dst:             bc_get_atom
        - Src:             'quickjs.c:38418,17'
          Dst:             bc_get_atom
        - Src:             'quickjs.c:38423,9'
          Dst:             bc_get_leb128_int
        - Src:             'quickjs.c:38427,34'
          Dst:             js_mallocz
        - Src:             'quickjs.c:38432,17'
          Dst:             bc_get_leb128_int
        - Src:             'quickjs.c:38437,9'
          Dst:             bc_get_leb128_int
        - Src:             'quickjs.c:38441,29'
          Dst:             js_mallocz
        - Src:             'quickjs.c:38447,17'
          Dst:             bc_get_leb128_int
        - Src:             'quickjs.c:38449,17'
          Dst:             bc_get_u8
        - Src:             'quickjs.c:38452,17'
          Dst:             bc_get_atom
        - Src:             'quickjs.c:38454,17'
          Dst:             bc_get_leb128_int
        - Src:             'quickjs.c:38459,9'
          Dst:             bc_get_u8
        - Src:             'quickjs.c:38463,19'
          Dst:             JS_ReadObjectRec
        - Src:             'quickjs.c:38464,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:38469,9'
          Dst:             JS_FreeValue
    - functionName:    JS_ReadObjectTag
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38475
      functionLinenumberEnd: 38508
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          95
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - BC_add_object_ref
        - JS_DefinePropertyValue
        - JS_FreeAtom
        - JS_FreeValue
        - JS_IsException
        - JS_NewObject
        - JS_ReadObjectRec
        - bc_get_atom
        - bc_get_leb128
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:38483,11'
          Dst:             JS_NewObject
        - Src:             'quickjs.c:38484,9'
          Dst:             BC_add_object_ref
        - Src:             'quickjs.c:38486,9'
          Dst:             bc_get_leb128
        - Src:             'quickjs.c:38489,13'
          Dst:             bc_get_atom
        - Src:             'quickjs.c:38494,15'
          Dst:             JS_ReadObjectRec
        - Src:             'quickjs.c:38495,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:38496,13'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:38499,15'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:38500,9'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:38506,5'
          Dst:             JS_FreeValue
    - functionName:    JS_ReadArray
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38511
      functionLinenumberEnd: 38553
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          130
      EdgeCount:       42
      CyclomaticComplexity: 13
      functionsReached:
        - BC_add_object_ref
        - JS_DefinePropertyValue
        - JS_DefinePropertyValueUint32
        - JS_FreeValue
        - JS_IsException
        - JS_IsUndefined
        - JS_NewArray
        - JS_PreventExtensions
        - JS_ReadObjectRec
        - bc_get_leb128
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:38519,11'
          Dst:             JS_NewArray
        - Src:             'quickjs.c:38520,9'
          Dst:             BC_add_object_ref
        - Src:             'quickjs.c:38523,9'
          Dst:             bc_get_leb128
        - Src:             'quickjs.c:38526,15'
          Dst:             JS_ReadObjectRec
        - Src:             'quickjs.c:38527,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:38533,15'
          Dst:             JS_DefinePropertyValueUint32
        - Src:             'quickjs.c:38539,15'
          Dst:             JS_ReadObjectRec
        - Src:             'quickjs.c:38540,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:38542,14'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:38543,19'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:38547,9'
          Dst:             JS_PreventExtensions
        - Src:             'quickjs.c:38551,5'
          Dst:             JS_FreeValue
    - functionName:    JS_ReadTypedArray
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38556
      functionLinenumberEnd: 38600
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         30
      ICount:          178
      EdgeCount:       41
      CyclomaticComplexity: 13
      functionsReached:
        - BC_add_object_ref1
        - JS_FreeValue
        - JS_IsException
        - JS_ReadObjectRec
        - JS_ThrowTypeError
        - __JS_NewFloat64
        - bc_get_leb128
        - bc_get_u8
        - js_get_array_buffer
        - js_typed_array_constructor
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:38563,9'
          Dst:             bc_get_u8
        - Src:             'quickjs.c:38566,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:38567,9'
          Dst:             bc_get_leb128
        - Src:             'quickjs.c:38569,9'
          Dst:             bc_get_leb128
        - Src:             'quickjs.c:38574,9'
          Dst:             BC_add_object_ref1
        - Src:             'quickjs.c:38576,20'
          Dst:             JS_ReadObjectRec
        - Src:             'quickjs.c:38577,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:38579,10'
          Dst:             js_get_array_buffer
        - Src:             'quickjs.c:38580,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:38584,15'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:38585,15'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:38586,11'
          Dst:             js_typed_array_constructor
        - Src:             'quickjs.c:38589,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:38594,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:38597,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:38598,5'
          Dst:             JS_FreeValue
    - functionName:    JS_ReadArrayBuffer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38603
      functionLinenumberEnd: 38639
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          113
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - BC_add_object_ref
        - JS_FreeValue
        - JS_IsException
        - JS_ThrowTypeError
        - bc_get_leb128
        - bc_read_error_end
        - js_array_buffer_constructor3
        - js_array_buffer_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:38609,9'
          Dst:             bc_get_leb128
        - Src:             'quickjs.c:38611,9'
          Dst:             bc_get_leb128
        - Src:             'quickjs.c:38614,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:38620,9'
          Dst:             bc_read_error_end
        - Src:             'quickjs.c:38624,11'
          Dst:             js_array_buffer_constructor3
        - Src:             'quickjs.c:38624,11'
          Dst:             js_array_buffer_free
        - Src:             'quickjs.c:38630,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:38632,9'
          Dst:             BC_add_object_ref
        - Src:             'quickjs.c:38637,5'
          Dst:             JS_FreeValue
    - functionName:    JS_ReadSharedArrayBuffer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38642
      functionLinenumberEnd: 38677
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          108
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - BC_add_object_ref
        - JS_FreeValue
        - JS_IsException
        - JS_ThrowTypeError
        - bc_get_leb128
        - bc_get_u64
        - js_array_buffer_constructor3
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:38650,9'
          Dst:             bc_get_leb128
        - Src:             'quickjs.c:38652,9'
          Dst:             bc_get_leb128
        - Src:             'quickjs.c:38655,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:38660,9'
          Dst:             bc_get_u64
        - Src:             'quickjs.c:38664,11'
          Dst:             js_array_buffer_constructor3
        - Src:             'quickjs.c:38669,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:38671,9'
          Dst:             BC_add_object_ref
        - Src:             'quickjs.c:38675,5'
          Dst:             JS_FreeValue
    - functionName:    JS_ReadDate
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38680
      functionLinenumberEnd: 38703
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          71
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - BC_add_object_ref
        - JS_FreeValue
        - JS_IsException
        - JS_IsNumber
        - JS_NewObjectProtoClass
        - JS_ReadObjectRec
        - JS_SetObjectData
        - JS_ThrowTypeError
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:38684,11'
          Dst:             JS_ReadObjectRec
        - Src:             'quickjs.c:38685,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:38687,10'
          Dst:             JS_IsNumber
        - Src:             'quickjs.c:38688,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:38691,11'
          Dst:             JS_NewObjectProtoClass
        - Src:             'quickjs.c:38693,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:38695,9'
          Dst:             BC_add_object_ref
        - Src:             'quickjs.c:38697,5'
          Dst:             JS_SetObjectData
        - Src:             'quickjs.c:38700,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:38701,5'
          Dst:             JS_FreeValue
    - functionName:    js_new_module_def
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29084
      functionLinenumberEnd: 29104
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          80
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeAtom
        - add_gc_object
        - js_mallocz
        - list_add_tail
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:29086,9'
          Dst:             js_mallocz
        - Src:             'quickjs.c:29088,9'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:29092,5'
          Dst:             add_gc_object
        - Src:             'quickjs.c:29102,5'
          Dst:             list_add_tail
    - functionName:    JS_AtomIsString
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2743
      functionLinenumberEnd: 2744
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_AtomGetKind
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:2744,12'
          Dst:             JS_AtomGetKind
    - functionName:    js_object_list_resize_hash
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36820
      functionLinenumberEnd: 36841
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          87
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - js_free
        - js_malloc
        - js_object_list_get_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:36824,22'
          Dst:             js_malloc
        - Src:             'quickjs.c:36827,5'
          Dst:             js_free
        - Src:             'quickjs.c:36836,13'
          Dst:             js_object_list_get_hash
    - functionName:    js_object_list_get_hash
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36814
      functionLinenumberEnd: 36815
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bc_atom_to_idx
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37018
      functionLinenumberEnd: 37055
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          127
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - __JS_AtomIsTaggedInt
        - js_resize_array
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:37021,33'
          Dst:             __JS_AtomIsTaggedInt
        - Src:             'quickjs.c:37033,13'
          Dst:             js_resize_array
        - Src:             'quickjs.c:37041,9'
          Dst:             js_resize_array
    - functionName:    JS_WriteFunctionBytecode
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37134
      functionLinenumberEnd: 37176
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          101
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - bc_atom_to_idx
        - dbuf_put
        - get_u32
        - js_free
        - js_malloc
        - put_u32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:37140,14'
          Dst:             js_malloc
        - Src:             'quickjs.c:37155,20'
          Dst:             get_u32
        - Src:             'quickjs.c:37156,17'
          Dst:             bc_atom_to_idx
        - Src:             'quickjs.c:37158,13'
          Dst:             put_u32
        - Src:             'quickjs.c:37169,5'
          Dst:             dbuf_put
        - Src:             'quickjs.c:0,0'
          Dst:             js_free
    - functionName:    bc_put_atom
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37058
      functionLinenumberEnd: 37070
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          42
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - __JS_AtomIsTaggedInt
        - __JS_AtomToUInt32
        - bc_atom_to_idx
        - bc_put_leb128
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:37061,9'
          Dst:             __JS_AtomIsTaggedInt
        - Src:             'quickjs.c:37062,14'
          Dst:             __JS_AtomToUInt32
        - Src:             'quickjs.c:37064,13'
          Dst:             bc_atom_to_idx
        - Src:             'quickjs.c:37068,5'
          Dst:             bc_put_leb128
    - functionName:    bc_put_leb128
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37002
      functionLinenumberEnd: 37004
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_put_leb128
      functionUses:    40
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:37003,5'
          Dst:             dbuf_put_leb128
    - functionName:    bc_set_flags
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37012
      functionLinenumberEnd: 37015
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    20
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bc_put_u16
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36981
      functionLinenumberEnd: 36985
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_put_u16
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:36984,5'
          Dst:             dbuf_put_u16
    - functionName:    JS_WriteBigInt
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37191
      functionLinenumberEnd: 37237
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         56
      ICount:          295
      EdgeCount:       78
      CyclomaticComplexity: 24
      functionsReached:
        - bc_put_leb128
        - bc_put_u64
        - bc_put_u8
        - js_bigint_set_short
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:37198,5'
          Dst:             bc_put_u8
        - Src:             'quickjs.c:37201,13'
          Dst:             js_bigint_set_short
        - Src:             'quickjs.c:37223,5'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37223,5'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37223,5'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37229,13'
          Dst:             bc_put_u64
        - Src:             'quickjs.c:37233,13'
          Dst:             bc_put_u8
    - functionName:    bc_put_u8
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36976
      functionLinenumberEnd: 36978
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_putc
      functionUses:    25
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:36977,5'
          Dst:             dbuf_putc
    - functionName:    bc_put_u64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36995
      functionLinenumberEnd: 36999
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_put
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:36998,5'
          Dst:             dbuf_put
    - functionName:    JS_WriteTypedArray
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37502
      functionLinenumberEnd: 37513
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_WriteObjectRec
        - bc_put_leb128
        - bc_put_u8
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:37506,5'
          Dst:             bc_put_u8
        - Src:             'quickjs.c:37507,5'
          Dst:             bc_put_u8
        - Src:             'quickjs.c:37508,5'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37509,5'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37510,9'
          Dst:             JS_WriteObjectRec
    - functionName:    JS_WriteObjectRec
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37548
      functionLinenumberEnd: 37685
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         62
      ICount:          301
      EdgeCount:       74
      CyclomaticComplexity: 14
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_ThrowInternalError
        - JS_ThrowStackOverflow
        - JS_ThrowTypeError
        - JS_ToString
        - JS_WriteArray
        - JS_WriteArrayBuffer
        - JS_WriteBigInt
        - JS_WriteFunctionTag
        - JS_WriteModule
        - JS_WriteObjectRec
        - JS_WriteObjectTag
        - JS_WriteSharedArrayBuffer
        - JS_WriteString
        - JS_WriteTypedArray
        - bc_put_leb128
        - bc_put_sleb128
        - bc_put_u64
        - bc_put_u8
        - js_check_stack_overflow
        - js_object_list_add
        - js_object_list_find
      functionUses:    15
      BranchProfiles:
        - Branch String:   'quickjs.c:37557,5'
          Branch Sides:    []
        - Branch String:   'quickjs.c:37630,13'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:37551,9'
          Dst:             js_check_stack_overflow
        - Src:             'quickjs.c:37552,9'
          Dst:             JS_ThrowStackOverflow
        - Src:             'quickjs.c:37559,9'
          Dst:             bc_put_u8
        - Src:             'quickjs.c:37562,9'
          Dst:             bc_put_u8
        - Src:             'quickjs.c:37565,9'
          Dst:             bc_put_u8
        - Src:             'quickjs.c:37568,9'
          Dst:             bc_put_u8
        - Src:             'quickjs.c:37569,9'
          Dst:             bc_put_sleb128
        - Src:             'quickjs.c:37574,13'
          Dst:             bc_put_u8
        - Src:             'quickjs.c:37576,13'
          Dst:             bc_put_u64
        - Src:             'quickjs.c:37582,13'
          Dst:             bc_put_u8
        - Src:             'quickjs.c:37583,13'
          Dst:             JS_WriteString
        - Src:             'quickjs.c:37589,19'
          Dst:             JS_ToString
        - Src:             'quickjs.c:37590,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:37592,13'
          Dst:             JS_WriteObjectRec
        - Src:             'quickjs.c:37593,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:37599,13'
          Dst:             JS_WriteFunctionTag
        - Src:             'quickjs.c:37605,13'
          Dst:             JS_WriteModule
        - Src:             'quickjs.c:37614,23'
          Dst:             js_object_list_find
        - Src:             'quickjs.c:37616,21'
          Dst:             bc_put_u8
        - Src:             'quickjs.c:37617,21'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37620,25'
          Dst:             js_object_list_add
        - Src:             'quickjs.c:37625,21'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:37632,23'
          Dst:             JS_WriteArray
        - Src:             'quickjs.c:37635,23'
          Dst:             JS_WriteObjectTag
        - Src:             'quickjs.c:37638,23'
          Dst:             JS_WriteArrayBuffer
        - Src:             'quickjs.c:37643,23'
          Dst:             JS_WriteSharedArrayBuffer
        - Src:             'quickjs.c:37646,17'
          Dst:             bc_put_u8
        - Src:             'quickjs.c:37647,23'
          Dst:             JS_WriteObjectRec
        - Src:             'quickjs.c:37653,17'
          Dst:             bc_put_u8
        - Src:             'quickjs.c:37654,23'
          Dst:             JS_WriteObjectRec
        - Src:             'quickjs.c:37659,27'
          Dst:             JS_WriteTypedArray
        - Src:             'quickjs.c:37661,21'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:37673,13'
          Dst:             JS_WriteBigInt
        - Src:             'quickjs.c:37678,9'
          Dst:             JS_ThrowInternalError
    - functionName:    bc_put_sleb128
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37007
      functionLinenumberEnd: 37009
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_put_sleb128
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:37008,5'
          Dst:             dbuf_put_sleb128
    - functionName:    JS_WriteString
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37179
      functionLinenumberEnd: 37188
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          56
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - bc_put_leb128
        - bc_put_u16
        - dbuf_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:37181,5'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37184,13'
          Dst:             bc_put_u16
        - Src:             'quickjs.c:37186,9'
          Dst:             dbuf_put
    - functionName:    JS_WriteFunctionTag
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37242
      functionLinenumberEnd: 37328
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         38
      ICount:          355
      EdgeCount:       49
      CyclomaticComplexity: 13
      functionsReached:
        - JS_WriteFunctionBytecode
        - JS_WriteObjectRec
        - __assert_fail
        - bc_put_atom
        - bc_put_leb128
        - bc_put_u16
        - bc_put_u8
        - bc_set_flags
        - dbuf_put
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:37247,5'
          Dst:             bc_put_u8
        - Src:             'quickjs.c:37249,5'
          Dst:             bc_set_flags
        - Src:             'quickjs.c:37250,5'
          Dst:             bc_set_flags
        - Src:             'quickjs.c:37251,5'
          Dst:             bc_set_flags
        - Src:             'quickjs.c:37252,5'
          Dst:             bc_set_flags
        - Src:             'quickjs.c:37253,5'
          Dst:             bc_set_flags
        - Src:             'quickjs.c:37254,5'
          Dst:             bc_set_flags
        - Src:             'quickjs.c:37255,5'
          Dst:             bc_set_flags
        - Src:             'quickjs.c:37256,5'
          Dst:             bc_set_flags
        - Src:             'quickjs.c:37257,5'
          Dst:             bc_set_flags
        - Src:             'quickjs.c:37258,5'
          Dst:             bc_set_flags
        - Src:             'quickjs.c:37259,5'
          Dst:             bc_set_flags
        - Src:             'quickjs.c:37260,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:37261,5'
          Dst:             bc_put_u16
        - Src:             'quickjs.c:37262,5'
          Dst:             bc_put_u8
        - Src:             'quickjs.c:37263,5'
          Dst:             bc_put_atom
        - Src:             'quickjs.c:37265,5'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37266,5'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37267,5'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37268,5'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37269,5'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37270,5'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37271,5'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37272,5'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37274,9'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37277,13'
          Dst:             bc_put_atom
        - Src:             'quickjs.c:37278,13'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37279,13'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37281,13'
          Dst:             bc_set_flags
        - Src:             'quickjs.c:37282,13'
          Dst:             bc_set_flags
        - Src:             'quickjs.c:37283,13'
          Dst:             bc_set_flags
        - Src:             'quickjs.c:37284,13'
          Dst:             bc_set_flags
        - Src:             'quickjs.c:37285,13'
          Dst:             bc_set_flags
        - Src:             'quickjs.c:37286,13'
          Dst:             __assert_fail
        - Src:             'quickjs.c:37287,13'
          Dst:             bc_put_u8
        - Src:             'quickjs.c:37290,9'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37295,9'
          Dst:             bc_put_atom
        - Src:             'quickjs.c:37296,9'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37298,9'
          Dst:             bc_set_flags
        - Src:             'quickjs.c:37299,9'
          Dst:             bc_set_flags
        - Src:             'quickjs.c:37300,9'
          Dst:             bc_set_flags
        - Src:             'quickjs.c:37301,9'
          Dst:             bc_set_flags
        - Src:             'quickjs.c:37302,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:37303,9'
          Dst:             bc_put_u16
        - Src:             'quickjs.c:37306,9'
          Dst:             JS_WriteFunctionBytecode
        - Src:             'quickjs.c:37310,9'
          Dst:             bc_put_atom
        - Src:             'quickjs.c:37311,9'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37312,9'
          Dst:             dbuf_put
        - Src:             'quickjs.c:37314,13'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37315,13'
          Dst:             dbuf_put
        - Src:             'quickjs.c:37317,13'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37322,13'
          Dst:             JS_WriteObjectRec
    - functionName:    JS_WriteModule
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37331
      functionLinenumberEnd: 37381
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         36
      ICount:          208
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - JS_WriteObjectRec
        - bc_put_atom
        - bc_put_leb128
        - bc_put_u8
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:37335,5'
          Dst:             bc_put_u8
        - Src:             'quickjs.c:37336,5'
          Dst:             bc_put_atom
        - Src:             'quickjs.c:37338,5'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37341,9'
          Dst:             bc_put_atom
        - Src:             'quickjs.c:37342,13'
          Dst:             JS_WriteObjectRec
        - Src:             'quickjs.c:37346,5'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37349,9'
          Dst:             bc_put_u8
        - Src:             'quickjs.c:37351,13'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37353,13'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37354,13'
          Dst:             bc_put_atom
        - Src:             'quickjs.c:37356,9'
          Dst:             bc_put_atom
        - Src:             'quickjs.c:37359,5'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37362,9'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37365,5'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37368,9'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37369,9'
          Dst:             bc_put_u8
        - Src:             'quickjs.c:37370,9'
          Dst:             bc_put_atom
        - Src:             'quickjs.c:37371,9'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37374,5'
          Dst:             bc_put_u8
        - Src:             'quickjs.c:37376,9'
          Dst:             JS_WriteObjectRec
    - functionName:    js_object_list_find
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36871
      functionLinenumberEnd: 36887
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          60
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - js_object_list_get_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:36878,9'
          Dst:             js_object_list_get_hash
    - functionName:    js_object_list_add
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36846
      functionLinenumberEnd: 36867
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          78
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - js_object_list_get_hash
        - js_object_list_resize_hash
        - js_resize_array
        - max_uint32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:36850,9'
          Dst:             js_resize_array
        - Src:             'quickjs.c:36855,25'
          Dst:             max_uint32
        - Src:             'quickjs.c:36858,13'
          Dst:             js_object_list_resize_hash
        - Src:             'quickjs.c:36862,9'
          Dst:             js_object_list_get_hash
    - functionName:    JS_WriteArray
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37385
      functionLinenumberEnd: 37460
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         73
      ICount:          333
      EdgeCount:       100
      CyclomaticComplexity: 29
      functionsReached:
        - JS_FreeAtom
        - JS_NewAtomUInt32
        - JS_ThrowTypeError
        - JS_WriteObjectRec
        - bc_put_leb128
        - bc_put_u8
        - get_shape_prop
        - js_get_length32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:0,0'
          Dst:             bc_put_u8
        - Src:             'quickjs.c:37403,9'
          Dst:             js_get_length32
        - Src:             'quickjs.c:37405,5'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37408,19'
          Dst:             JS_WriteObjectRec
        - Src:             'quickjs.c:37413,19'
          Dst:             JS_WriteObjectRec
        - Src:             'quickjs.c:37420,20'
          Dst:             JS_NewAtomUInt32
        - Src:             'quickjs.c:37423,19'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:37424,13'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:37424,13'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:37430,23'
          Dst:             JS_WriteObjectRec
        - Src:             'quickjs.c:37434,23'
          Dst:             JS_WriteObjectRec
        - Src:             'quickjs.c:37442,15'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:37448,19'
          Dst:             JS_WriteObjectRec
        - Src:             'quickjs.c:37452,19'
          Dst:             JS_WriteObjectRec
        - Src:             'quickjs.c:0,0'
          Dst:             JS_ThrowTypeError
    - functionName:    JS_WriteObjectTag
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37463
      functionLinenumberEnd: 37499
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         36
      ICount:          168
      EdgeCount:       49
      CyclomaticComplexity: 15
      functionsReached:
        - JS_AtomIsString
        - JS_ThrowTypeError
        - JS_WriteObjectRec
        - bc_put_atom
        - bc_put_leb128
        - bc_put_u8
        - get_shape_prop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:37471,5'
          Dst:             bc_put_u8
        - Src:             'quickjs.c:37477,25'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:37480,17'
          Dst:             JS_AtomIsString
        - Src:             'quickjs.c:37483,21'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:37476,13'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37477,25'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:37480,17'
          Dst:             JS_AtomIsString
        - Src:             'quickjs.c:37489,21'
          Dst:             bc_put_atom
        - Src:             'quickjs.c:37490,25'
          Dst:             JS_WriteObjectRec
    - functionName:    JS_WriteArrayBuffer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37516
      functionLinenumberEnd: 37528
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_ThrowTypeErrorDetachedArrayBuffer
        - bc_put_leb128
        - bc_put_u8
        - dbuf_put
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:37520,9'
          Dst:             JS_ThrowTypeErrorDetachedArrayBuffer
        - Src:             'quickjs.c:37523,5'
          Dst:             bc_put_u8
        - Src:             'quickjs.c:37524,5'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37525,5'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37526,5'
          Dst:             dbuf_put
    - functionName:    JS_WriteSharedArrayBuffer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37531
      functionLinenumberEnd: 37545
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          61
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - bc_put_leb128
        - bc_put_u64
        - bc_put_u8
        - js_resize_array
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:37534,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:37535,5'
          Dst:             bc_put_u8
        - Src:             'quickjs.c:37536,5'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37537,5'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37538,5'
          Dst:             bc_put_u64
        - Src:             'quickjs.c:37539,9'
          Dst:             js_resize_array
    - functionName:    js_module_ns_has
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29766
      functionLinenumberEnd: 29767
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          60
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - get_shape_prop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:29767,13'
          Dst:             get_shape_prop
    - functionName:    js_arguments_define_own_property
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15750
      functionLinenumberEnd: 15763
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          59
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_AtomIsArrayIndex
        - JS_DefineProperty
        - convert_fast_array_to_array
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:15755,26'
          Dst:             JS_AtomIsArrayIndex
        - Src:             'quickjs.c:15757,13'
          Dst:             convert_fast_array_to_array
        - Src:             'quickjs.c:15761,12'
          Dst:             JS_DefineProperty
    - functionName:    js_print_error
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13594
      functionLinenumberEnd: 13627
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          96
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - JS_FreeCString
        - get_prop_string
        - js_putc
        - js_puts
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:13598,11'
          Dst:             get_prop_string
        - Src:             'quickjs.c:13600,9'
          Dst:             js_puts
        - Src:             'quickjs.c:13602,9'
          Dst:             js_puts
        - Src:             'quickjs.c:13603,9'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:13606,11'
          Dst:             get_prop_string
        - Src:             'quickjs.c:13608,9'
          Dst:             js_puts
        - Src:             'quickjs.c:13609,9'
          Dst:             js_puts
        - Src:             'quickjs.c:13611,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:13614,11'
          Dst:             get_prop_string
        - Src:             'quickjs.c:13616,9'
          Dst:             js_putc
        - Src:             'quickjs.c:13620,15'
          Dst:             strlen
        - Src:             'quickjs.c:13625,9'
          Dst:             JS_FreeCString
    - functionName:    js_puts
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13299
      functionLinenumberEnd: 13301
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strlen
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:13300,41'
          Dst:             strlen
    - functionName:    js_putc
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13294
      functionLinenumberEnd: 13296
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    30
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_date_string
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54596
      functionLinenumberEnd: 54698
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          273
      EdgeCount:       47
      CyclomaticComplexity: 10
      functionsReached:
        - JS_NewStringLen
        - JS_ThrowRangeError
        - get_date_fields
        - js_new_string8
        - snprintf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'quickjs.c:54629,9'
          Branch Sides:    []
        - Branch String:   'quickjs.c:54667,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:54606,11'
          Dst:             get_date_fields
        - Src:             'quickjs.c:54611,20'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:54613,20'
          Dst:             js_new_string8
        - Src:             'quickjs.c:54631,20'
          Dst:             snprintf
        - Src:             'quickjs.c:54637,20'
          Dst:             snprintf
        - Src:             'quickjs.c:0,0'
          Dst:             snprintf
        - Src:             'quickjs.c:54653,20'
          Dst:             snprintf
        - Src:             'quickjs.c:54657,20'
          Dst:             snprintf
        - Src:             'quickjs.c:54669,20'
          Dst:             snprintf
        - Src:             'quickjs.c:54673,20'
          Dst:             snprintf
        - Src:             'quickjs.c:54682,20'
          Dst:             snprintf
        - Src:             'quickjs.c:54687,20'
          Dst:             snprintf
        - Src:             'quickjs.c:54691,20'
          Dst:             snprintf
        - Src:             'quickjs.c:54697,12'
          Dst:             JS_NewStringLen
    - functionName:    js_print_regexp
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13528
      functionLinenumberEnd: 13590
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         58
      ICount:          251
      EdgeCount:       74
      CyclomaticComplexity: 18
      functionsReached:
        - js_putc
        - js_puts
        - lre_get_flags
        - string_get
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs.c:13547,13'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:13536,9'
          Dst:             js_puts
        - Src:             'quickjs.c:13540,5'
          Dst:             js_putc
        - Src:             'quickjs.c:13542,9'
          Dst:             js_puts
        - Src:             'quickjs.c:13547,25'
          Dst:             string_get
        - Src:             'quickjs.c:13550,26'
          Dst:             string_get
        - Src:             'quickjs.c:13557,34'
          Dst:             string_get
        - Src:             'quickjs.c:13577,13'
          Dst:             js_putc
        - Src:             'quickjs.c:0,0'
          Dst:             js_putc
        - Src:             'quickjs.c:13582,5'
          Dst:             js_putc
        - Src:             'quickjs.c:13584,13'
          Dst:             lre_get_flags
        - Src:             'quickjs.c:13587,13'
          Dst:             js_putc
        - Src:             'quickjs.c:13587,13'
          Dst:             js_putc
        - Src:             'quickjs.c:13587,13'
          Dst:             js_putc
        - Src:             'quickjs.c:13587,13'
          Dst:             js_putc
        - Src:             'quickjs.c:13587,13'
          Dst:             js_putc
        - Src:             'quickjs.c:13587,13'
          Dst:             js_putc
        - Src:             'quickjs.c:13587,13'
          Dst:             js_putc
        - Src:             'quickjs.c:13587,13'
          Dst:             js_putc
    - functionName:    js_print_more_items
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13521
      functionLinenumberEnd: 13524
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_print_comma
        - js_printf
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:13522,5'
          Dst:             js_print_comma
        - Src:             'quickjs.c:13523,5'
          Dst:             js_printf
    - functionName:    js_print_comma
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13505
      functionLinenumberEnd: 13517
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          31
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - js_printf
      functionUses:    8
      BranchProfiles:
        - Branch String:   'quickjs.c:13506,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:0,0'
          Dst:             js_printf
    - functionName:    js_printf
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13304
      functionLinenumberEnd: 13312
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strlen
        - vsnprintf
      functionUses:    40
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:13309,5'
          Dst:             vsnprintf
        - Src:             'quickjs.c:13311,41'
          Dst:             strlen
    - functionName:    js_print_array_get_length
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13483
      functionLinenumberEnd: 13502
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          84
      EdgeCount:       19
      CyclomaticComplexity: 5
      functionsReached:
        - get_shape_prop
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs.c:13494,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:13488,11'
          Dst:             get_shape_prop
    - functionName:    is_ascii_ident
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13444
      functionLinenumberEnd: 13456
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         37
      ICount:          145
      EdgeCount:       52
      CyclomaticComplexity: 17
      functionsReached:
        - string_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:13450,13'
          Dst:             string_get
        - Src:             'quickjs.c:13450,13'
          Dst:             string_get
    - functionName:    js_print_string1
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13338
      functionLinenumberEnd: 13392
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          151
      EdgeCount:       45
      CyclomaticComplexity: 11
      functionsReached:
        - from_surrogate
        - is_hi_surrogate
        - is_lo_surrogate
        - js_printf
        - js_putc
        - string_get
        - unicode_to_utf8
      functionUses:    2
      BranchProfiles:
        - Branch String:   'quickjs.c:13344,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:13343,13'
          Dst:             string_get
        - Src:             'quickjs.c:13362,13'
          Dst:             js_putc
        - Src:             'quickjs.c:13363,13'
          Dst:             js_putc
        - Src:             'quickjs.c:13369,17'
          Dst:             js_putc
        - Src:             'quickjs.c:13373,17'
          Dst:             js_printf
        - Src:             'quickjs.c:13375,21'
          Dst:             is_hi_surrogate
        - Src:             'quickjs.c:13378,26'
          Dst:             string_get
        - Src:             'quickjs.c:13379,26'
          Dst:             is_lo_surrogate
        - Src:             'quickjs.c:13382,25'
          Dst:             from_surrogate
        - Src:             'quickjs.c:13383,28'
          Dst:             is_lo_surrogate
        - Src:             'quickjs.c:13386,21'
          Dst:             unicode_to_utf8
    - functionName:    js_string_get_length
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13324
      functionLinenumberEnd: 13334
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_print_string_rec
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13396
      functionLinenumberEnd: 13411
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          79
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - js_print_string1
        - js_print_string_rec
        - js_printf
        - js_string_get_length
        - min_uint32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:13401,19'
          Dst:             min_uint32
        - Src:             'quickjs.c:13402,13'
          Dst:             js_print_string1
        - Src:             'quickjs.c:13406,9'
          Dst:             js_print_string_rec
        - Src:             'quickjs.c:13407,53'
          Dst:             js_string_get_length
        - Src:             'quickjs.c:13409,9'
          Dst:             js_printf
    - functionName:    js_print_object
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13630
      functionLinenumberEnd: 13868
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         171
      ICount:          857
      EdgeCount:       231
      CyclomaticComplexity: 62
      functionsReached:
        - JS_FreeCString
        - JS_FreeValueRT
        - JS_IsException
        - fromfp16
        - get_date_string
        - get_prop_string
        - get_shape_prop
        - js_autoinit_get_id
        - js_autoinit_get_realm
        - js_class_has_bytecode
        - js_print_array_get_length
        - js_print_atom
        - js_print_comma
        - js_print_error
        - js_print_float64
        - js_print_more_items
        - js_print_raw_string
        - js_print_regexp
        - js_print_value
        - js_printf
        - js_putc
        - js_puts
        - min_uint32
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs.c:13675,13'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:13643,9'
          Dst:             js_printf
        - Src:             'quickjs.c:13647,19'
          Dst:             js_print_array_get_length
        - Src:             'quickjs.c:13649,20'
          Dst:             min_uint32
        - Src:             'quickjs.c:13651,17'
          Dst:             js_print_comma
        - Src:             'quickjs.c:13652,17'
          Dst:             js_print_value
        - Src:             'quickjs.c:13655,17'
          Dst:             js_print_more_items
        - Src:             'quickjs.c:13658,17'
          Dst:             js_print_comma
        - Src:             'quickjs.c:13659,17'
          Dst:             js_printf
        - Src:             'quickjs.c:13667,9'
          Dst:             js_print_atom
        - Src:             'quickjs.c:13668,9'
          Dst:             js_printf
        - Src:             'quickjs.c:13671,16'
          Dst:             min_uint32
        - Src:             'quickjs.c:13674,13'
          Dst:             js_print_comma
        - Src:             'quickjs.c:13698,17'
          Dst:             js_printf
        - Src:             'quickjs.c:13701,17'
          Dst:             js_printf
        - Src:             'quickjs.c:13704,37'
          Dst:             fromfp16
        - Src:             'quickjs.c:13704,17'
          Dst:             js_print_float64
        - Src:             'quickjs.c:13707,17'
          Dst:             js_print_float64
        - Src:             'quickjs.c:13710,17'
          Dst:             js_print_float64
        - Src:             'quickjs.c:13715,13'
          Dst:             js_print_more_items
        - Src:             'quickjs.c:13719,9'
          Dst:             js_printf
        - Src:             'quickjs.c:13723,13'
          Dst:             js_putc
        - Src:             'quickjs.c:13724,29'
          Dst:             get_prop_string
        - Src:             'quickjs.c:0,0'
          Dst:             js_puts
        - Src:             'quickjs.c:13729,13'
          Dst:             JS_FreeCString
        - Src:             'quickjs.c:13731,9'
          Dst:             js_printf
        - Src:             'quickjs.c:13739,9'
          Dst:             js_print_atom
        - Src:             'quickjs.c:13740,9'
          Dst:             js_printf
        - Src:             'quickjs.c:13744,13'
          Dst:             js_print_comma
        - Src:             'quickjs.c:13747,13'
          Dst:             js_print_value
        - Src:             'quickjs.c:13749,17'
          Dst:             js_printf
        - Src:             'quickjs.c:13750,17'
          Dst:             js_print_value
        - Src:             'quickjs.c:13757,13'
          Dst:             js_print_more_items
        - Src:             'quickjs.c:13759,9'
          Dst:             js_print_regexp
        - Src:             'quickjs.c:13763,23'
          Dst:             get_date_string
        - Src:             'quickjs.c:13764,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:13766,9'
          Dst:             js_print_raw_string
        - Src:             'quickjs.c:13767,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:13770,9'
          Dst:             js_print_error
        - Src:             'quickjs.c:13775,13'
          Dst:             js_print_atom
        - Src:             'quickjs.c:13776,13'
          Dst:             js_printf
        - Src:             'quickjs.c:13778,9'
          Dst:             js_printf
        - Src:             'quickjs.c:13786,26'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:13794,21'
          Dst:             js_print_comma
        - Src:             'quickjs.c:13795,21'
          Dst:             js_print_atom
        - Src:             'quickjs.c:13796,21'
          Dst:             js_printf
        - Src:             'quickjs.c:13801,29'
          Dst:             js_printf
        - Src:             'quickjs.c:13805,33'
          Dst:             js_printf
        - Src:             'quickjs.c:13807,33'
          Dst:             js_printf
        - Src:             'quickjs.c:13809,33'
          Dst:             js_printf
        - Src:             'quickjs.c:13814,29'
          Dst:             js_printf
        - Src:             'quickjs.c:13816,29'
          Dst:             js_print_value
        - Src:             'quickjs.c:13821,45'
          Dst:             js_autoinit_get_realm
        - Src:             'quickjs.c:13822,37'
          Dst:             js_autoinit_get_id
        - Src:             'quickjs.c:13820,29'
          Dst:             js_printf
        - Src:             'quickjs.c:13827,29'
          Dst:             js_printf
        - Src:             'quickjs.c:13830,25'
          Dst:             js_print_value
        - Src:             'quickjs.c:13837,13'
          Dst:             js_print_more_items
        - Src:             'quickjs.c:13839,32'
          Dst:             js_class_has_bytecode
        - Src:             'quickjs.c:13845,13'
          Dst:             js_print_comma
        - Src:             'quickjs.c:13846,13'
          Dst:             js_printf
        - Src:             'quickjs.c:13850,17'
          Dst:             js_print_value
        - Src:             'quickjs.c:13849,21'
          Dst:             js_printf
        - Src:             'quickjs.c:13850,17'
          Dst:             js_print_value
        - Src:             'quickjs.c:13852,13'
          Dst:             js_printf
        - Src:             'quickjs.c:13855,13'
          Dst:             js_print_comma
        - Src:             'quickjs.c:13856,13'
          Dst:             js_printf
        - Src:             'quickjs.c:13857,13'
          Dst:             js_print_value
        - Src:             'quickjs.c:0,0'
          Dst:             js_printf
    - functionName:    js_print_value
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13880
      functionLinenumberEnd: 14000
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         57
      ICount:          290
      EdgeCount:       70
      CyclomaticComplexity: 15
      functionsReached:
        - JS_FreeValueRT
        - JS_IsException
        - js_bigint_sign
        - js_bigint_to_string
        - js_get_atom_index
        - js_print_atom
        - js_print_float64
        - js_print_object
        - js_print_raw_string
        - js_print_stack_index
        - js_print_string
        - js_printf
        - js_putc
        - js_puts
      functionUses:    9
      BranchProfiles:
        - Branch String:   'quickjs.c:13884,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:13886,9'
          Dst:             js_printf
        - Src:             'quickjs.c:13906,9'
          Dst:             js_puts
        - Src:             'quickjs.c:13909,9'
          Dst:             js_print_float64
        - Src:             'quickjs.c:13912,9'
          Dst:             js_printf
        - Src:             'quickjs.c:13916,27'
          Dst:             js_bigint_to_string
        - Src:             'quickjs.c:13917,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:13919,13'
          Dst:             js_print_raw_string
        - Src:             'quickjs.c:13920,13'
          Dst:             js_putc
        - Src:             'quickjs.c:13921,13'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:13928,19'
          Dst:             js_bigint_sign
        - Src:             'quickjs.c:13930,17'
          Dst:             js_printf
        - Src:             'quickjs.c:13931,13'
          Dst:             js_printf
        - Src:             'quickjs.c:13934,21'
          Dst:             js_putc
        - Src:             'quickjs.c:13938,17'
          Dst:             js_printf
        - Src:             'quickjs.c:13941,13'
          Dst:             js_putc
        - Src:             'quickjs.c:13943,17'
          Dst:             js_putc
        - Src:             'quickjs.c:13950,13'
          Dst:             js_printf
        - Src:             'quickjs.c:13952,13'
          Dst:             js_print_string
        - Src:             'quickjs.c:13958,13'
          Dst:             js_puts
        - Src:             'quickjs.c:13959,13'
          Dst:             js_print_atom
        - Src:             'quickjs.c:13960,13'
          Dst:             js_putc
        - Src:             'quickjs.c:13967,19'
          Dst:             js_print_stack_index
        - Src:             'quickjs.c:13969,17'
          Dst:             js_printf
        - Src:             'quickjs.c:13972,17'
          Dst:             js_print_object
        - Src:             'quickjs.c:13976,17'
          Dst:             js_putc
        - Src:             'quickjs.c:13977,17'
          Dst:             js_print_atom
        - Src:             'quickjs.c:13979,21'
          Dst:             js_printf
        - Src:             'quickjs.c:13981,17'
          Dst:             js_putc
        - Src:             'quickjs.c:13988,13'
          Dst:             js_puts
        - Src:             'quickjs.c:13989,30'
          Dst:             js_get_atom_index
        - Src:             'quickjs.c:13989,13'
          Dst:             js_print_atom
        - Src:             'quickjs.c:13990,13'
          Dst:             js_putc
        - Src:             'quickjs.c:13994,9'
          Dst:             js_puts
        - Src:             'quickjs.c:13997,9'
          Dst:             js_printf
    - functionName:    js_print_atom
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13459
      functionLinenumberEnd: 13479
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          89
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - __JS_AtomIsTaggedInt
        - __JS_AtomToUInt32
        - __assert_fail
        - is_ascii_ident
        - js_print_string1
        - js_printf
        - js_putc
        - js_puts
        - string_get
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:13461,9'
          Dst:             __JS_AtomIsTaggedInt
        - Src:             'quickjs.c:13462,28'
          Dst:             __JS_AtomToUInt32
        - Src:             'quickjs.c:13462,9'
          Dst:             js_printf
        - Src:             'quickjs.c:13464,9'
          Dst:             js_puts
        - Src:             'quickjs.c:13466,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:13469,13'
          Dst:             is_ascii_ident
        - Src:             'quickjs.c:13471,28'
          Dst:             string_get
        - Src:             'quickjs.c:13471,17'
          Dst:             js_putc
        - Src:             'quickjs.c:13474,13'
          Dst:             js_putc
        - Src:             'quickjs.c:13475,13'
          Dst:             js_print_string1
        - Src:             'quickjs.c:13476,13'
          Dst:             js_putc
    - functionName:    js_print_float64
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13315
      functionLinenumberEnd: 13321
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_dtoa
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:13319,11'
          Dst:             js_dtoa
    - functionName:    js_print_raw_string
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13433
      functionLinenumberEnd: 13441
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeCString
        - JS_ToCStringLen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:13436,12'
          Dst:             JS_ToCStringLen
        - Src:             'quickjs.c:13439,9'
          Dst:             JS_FreeCString
    - functionName:    js_print_string
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13414
      functionLinenumberEnd: 13430
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          63
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - js_print_string_rec
        - js_printf
        - js_putc
        - js_string_get_length
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:13418,9'
          Dst:             js_printf
        - Src:             'quickjs.c:13423,5'
          Dst:             js_putc
        - Src:             'quickjs.c:13424,5'
          Dst:             js_print_string_rec
        - Src:             'quickjs.c:13425,5'
          Dst:             js_putc
        - Src:             'quickjs.c:13426,9'
          Dst:             js_string_get_length
        - Src:             'quickjs.c:13428,9'
          Dst:             js_printf
    - functionName:    js_print_stack_index
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13871
      functionLinenumberEnd: 13877
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          38
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_DupAtomRT
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2695
      functionLinenumberEnd: 2702
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __JS_AtomIsConst
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:2698,10'
          Dst:             __JS_AtomIsConst
    - functionName:    js_def_malloc_usable_size
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1725
      functionLinenumberEnd: 1733
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - malloc_usable_size
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1733,12'
          Dst:             malloc_usable_size
    - functionName:    malloc_usable_size
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_def_realloc
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1770
      functionLinenumberEnd: 1794
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          72
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached:
        - js_def_malloc
        - js_def_malloc_usable_size
        - realloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1776,16'
          Dst:             js_def_malloc
        - Src:             'quickjs.c:1778,16'
          Dst:             js_def_malloc_usable_size
        - Src:             'quickjs.c:1788,11'
          Dst:             realloc
        - Src:             'quickjs.c:1792,23'
          Dst:             js_def_malloc_usable_size
    - functionName:    js_def_malloc
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1741
      functionLinenumberEnd: 1757
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          51
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - __assert_fail
        - js_def_malloc_usable_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1745,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:1755,23'
          Dst:             js_def_malloc_usable_size
    - functionName:    realloc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_def_free
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1760
      functionLinenumberEnd: 1767
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - js_def_malloc_usable_size
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1765,23'
          Dst:             js_def_malloc_usable_size
    - functionName:    js_global_object_mark
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16691
      functionLinenumberEnd: 16694
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_MarkValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:16693,5'
          Dst:             JS_MarkValue
    - functionName:    js_global_object_finalizer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16684
      functionLinenumberEnd: 16687
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_FreeValueRT
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:16686,5'
          Dst:             JS_FreeValueRT
    - functionName:    js_generator_mark
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20487
      functionLinenumberEnd: 20494
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          35
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_generator_finalizer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20471
      functionLinenumberEnd: 20478
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          24
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_GetOpaque
        - free_generator_stack_rt
        - js_free_rt
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20472,26'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:20475,9'
          Dst:             free_generator_stack_rt
        - Src:             'quickjs.c:20476,9'
          Dst:             js_free_rt
    - functionName:    js_regexp_string_iterator_mark
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47887
      functionLinenumberEnd: 47894
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_MarkValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:47891,9'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:47892,9'
          Dst:             JS_MarkValue
    - functionName:    js_regexp_string_iterator_finalizer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47875
      functionLinenumberEnd: 47883
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeValueRT
        - js_free_rt
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:47879,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:47880,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:47881,9'
          Dst:             js_free_rt
    - functionName:    js_array_iterator_mark
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42887
      functionLinenumberEnd: 42893
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_MarkValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:42891,9'
          Dst:             JS_MarkValue
    - functionName:    js_array_iterator_finalizer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42876
      functionLinenumberEnd: 42883
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeValueRT
        - js_free_rt
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:42880,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:42881,9'
          Dst:             js_free_rt
    - functionName:    js_map_iterator_mark
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51840
      functionLinenumberEnd: 51848
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_MarkValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51846,9'
          Dst:             JS_MarkValue
    - functionName:    js_map_iterator_finalizer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51821
      functionLinenumberEnd: 51836
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          51
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeValueRT
        - JS_IsLiveObject
        - js_free_rt
        - map_decref_record
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51830,13'
          Dst:             JS_IsLiveObject
        - Src:             'quickjs.c:51831,13'
          Dst:             map_decref_record
        - Src:             'quickjs.c:51833,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:51834,9'
          Dst:             js_free_rt
    - functionName:    JS_IsLiveObject
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6443
      functionLinenumberEnd: 6449
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_IsObject
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:6445,10'
          Dst:             JS_IsObject
    - functionName:    js_iterator_wrap_mark
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43013
      functionLinenumberEnd: 43020
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_MarkValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:43017,9'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:43018,9'
          Dst:             JS_MarkValue
    - functionName:    js_iterator_wrap_finalizer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43001
      functionLinenumberEnd: 43009
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeValueRT
        - js_free_rt
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:43005,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:43006,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:43007,9'
          Dst:             js_free_rt
    - functionName:    js_iterator_helper_mark
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43756
      functionLinenumberEnd: 43765
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_MarkValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:43760,9'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:43761,9'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:43762,9'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:43763,9'
          Dst:             JS_MarkValue
    - functionName:    js_iterator_helper_finalizer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43742
      functionLinenumberEnd: 43752
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeValueRT
        - js_free_rt
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:43746,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:43747,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:43748,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:43749,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:43750,9'
          Dst:             js_free_rt
    - functionName:    js_iterator_concat_mark
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43114
      functionLinenumberEnd: 43123
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          62
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_MarkValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:43118,9'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:43119,9'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:43121,13'
          Dst:             JS_MarkValue
    - functionName:    js_iterator_concat_finalizer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43100
      functionLinenumberEnd: 43110
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          64
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeValueRT
        - js_free_rt
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:43104,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:43105,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:43108,9'
          Dst:             js_free_rt
        - Src:             'quickjs.c:43107,13'
          Dst:             JS_FreeValueRT
    - functionName:    js_map_mark
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51795
      functionLinenumberEnd: 51810
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          65
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - JS_MarkValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51806,17'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:51807,13'
          Dst:             JS_MarkValue
    - functionName:    js_map_finalizer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51764
      functionLinenumberEnd: 51792
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          101
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - JS_FreeValueRT
        - js_free_rt
        - js_weakref_free
        - list_del
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:51779,21'
          Dst:             js_weakref_free
        - Src:             'quickjs.c:51781,21'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:51782,17'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:51784,13'
          Dst:             js_free_rt
        - Src:             'quickjs.c:51786,9'
          Dst:             js_free_rt
        - Src:             'quickjs.c:51788,13'
          Dst:             list_del
        - Src:             'quickjs.c:51790,9'
          Dst:             js_free_rt
    - functionName:    js_typed_array_mark
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59403
      functionLinenumberEnd: 59409
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_MarkValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:59407,9'
          Dst:             JS_MarkValue
    - functionName:    js_typed_array_finalizer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59387
      functionLinenumberEnd: 59399
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          39
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeValueRT
        - js_free_rt
        - list_del
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:59394,13'
          Dst:             list_del
        - Src:             'quickjs.c:59396,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:59397,9'
          Dst:             js_free_rt
    - functionName:    js_array_buffer_finalizer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56215
      functionLinenumberEnd: 56246
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          112
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - js_free_rt
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56244,9'
          Dst:             js_free_rt
    - functionName:    js_regexp_finalizer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46859
      functionLinenumberEnd: 46866
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          40
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeValueRT
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:46863,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:46865,9'
          Dst:             JS_FreeValueRT
    - functionName:    js_for_in_iterator_mark
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5933
      functionLinenumberEnd: 5937
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_MarkValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5936,5'
          Dst:             JS_MarkValue
    - functionName:    js_for_in_iterator_finalizer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5916
      functionLinenumberEnd: 5929
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          61
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeAtomRT
        - JS_FreeValueRT
        - js_free_rt
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5921,5'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:5924,13'
          Dst:             JS_FreeAtomRT
        - Src:             'quickjs.c:5926,9'
          Dst:             js_free_rt
        - Src:             'quickjs.c:5928,5'
          Dst:             js_free_rt
    - functionName:    js_c_function_data_mark
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5613
      functionLinenumberEnd: 5622
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          48
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_GetOpaque
        - JS_MarkValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5614,32'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:5619,13'
          Dst:             JS_MarkValue
    - functionName:    js_c_function_data_finalizer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5599
      functionLinenumberEnd: 5609
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          50
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeValueRT
        - JS_GetOpaque
        - js_free_rt
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5600,32'
          Dst:             JS_GetOpaque
        - Src:             'quickjs.c:5605,13'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:5607,9'
          Dst:             js_free_rt
    - functionName:    js_bound_function_mark
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5904
      functionLinenumberEnd: 5913
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_MarkValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5909,5'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:5910,5'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:5912,9'
          Dst:             JS_MarkValue
    - functionName:    js_bound_function_finalizer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5889
      functionLinenumberEnd: 5900
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeValueRT
        - js_free_rt
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5894,5'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:5895,5'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:5897,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:5899,5'
          Dst:             js_free_rt
    - functionName:    js_bytecode_function_mark
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5863
      functionLinenumberEnd: 5886
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          86
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - JS_MarkValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5870,9'
          Dst:             JS_MarkValue
        - Src:             'quickjs.c:5884,9'
          Dst:             JS_MarkValue
    - functionName:    js_bytecode_function_finalizer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5839
      functionLinenumberEnd: 5859
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          74
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - JS_FreeValueRT
        - free_var_ref
        - js_free_rt
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5847,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:5854,17'
          Dst:             free_var_ref
        - Src:             'quickjs.c:5855,13'
          Dst:             js_free_rt
        - Src:             'quickjs.c:5857,9'
          Dst:             JS_FreeValueRT
    - functionName:    js_c_function_mark
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5831
      functionLinenumberEnd: 5836
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_c_function_finalizer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5822
      functionLinenumberEnd: 5827
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          25
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeContext
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5826,9'
          Dst:             JS_FreeContext
    - functionName:    js_mapped_arguments_mark
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15820
      functionLinenumberEnd: 15827
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          43
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_mapped_arguments_finalizer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15809
      functionLinenumberEnd: 15816
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          42
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - free_var_ref
        - js_free_rt
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:15814,9'
          Dst:             free_var_ref
        - Src:             'quickjs.c:15815,5'
          Dst:             js_free_rt
    - functionName:    js_object_data_mark
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5816
      functionLinenumberEnd: 5819
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_MarkValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5818,5'
          Dst:             JS_MarkValue
    - functionName:    js_object_data_finalizer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5808
      functionLinenumberEnd: 5812
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_FreeValueRT
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5810,5'
          Dst:             JS_FreeValueRT
    - functionName:    js_array_mark
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5798
      functionLinenumberEnd: 5805
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          43
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_MarkValue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5803,9'
          Dst:             JS_MarkValue
    - functionName:    js_array_finalizer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5786
      functionLinenumberEnd: 5794
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          46
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeValueRT
        - js_free_rt
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5791,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:5793,5'
          Dst:             js_free_rt
    - functionName:    js_finrec_constructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60576
      functionLinenumberEnd: 60602
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          82
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - JS_DupContext
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_IsFunction
        - JS_IsUndefined
        - JS_SetOpaque
        - JS_ThrowTypeError
        - init_list_head
        - js_create_from_ctor
        - js_mallocz
        - list_add_tail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:60581,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:60582,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:60584,10'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:60585,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:60587,11'
          Dst:             js_create_from_ctor
        - Src:             'quickjs.c:60588,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:60590,11'
          Dst:             js_mallocz
        - Src:             'quickjs.c:60592,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:60596,5'
          Dst:             list_add_tail
        - Src:             'quickjs.c:60597,5'
          Dst:             init_list_head
        - Src:             'quickjs.c:60598,18'
          Dst:             JS_DupContext
        - Src:             'quickjs.c:60599,15'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:60600,5'
          Dst:             JS_SetOpaque
    - functionName:    js_weakref_constructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60448
      functionLinenumberEnd: 60470
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          77
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_IsUndefined
        - JS_SetOpaque
        - JS_ThrowTypeError
        - js_create_from_ctor
        - js_mallocz
        - js_weakref_is_target
        - js_weakref_new
        - list_add_tail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:60452,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:60453,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:60455,10'
          Dst:             js_weakref_is_target
        - Src:             'quickjs.c:60456,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:60457,11'
          Dst:             js_create_from_ctor
        - Src:             'quickjs.c:60458,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:60460,26'
          Dst:             js_mallocz
        - Src:             'quickjs.c:60462,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:60465,19'
          Dst:             js_weakref_new
        - Src:             'quickjs.c:60467,5'
          Dst:             list_add_tail
        - Src:             'quickjs.c:60468,5'
          Dst:             JS_SetOpaque
    - functionName:    JS_AddIntrinsicAtomics
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60310
      functionLinenumberEnd: 60312
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_SetPropertyFunctionList
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:60312,12'
          Dst:             JS_SetPropertyFunctionList
    - functionName:    js_dataview_constructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59414
      functionLinenumberEnd: 59484
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          209
      EdgeCount:       56
      CyclomaticComplexity: 17
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - JS_IsUndefined
        - JS_ThrowRangeError
        - JS_ThrowTypeErrorDetachedArrayBuffer
        - JS_ToIndex
        - array_buffer_is_resizable
        - js_create_from_ctor
        - js_get_array_buffer
        - js_malloc
        - list_add_tail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:59426,12'
          Dst:             js_get_array_buffer
        - Src:             'quickjs.c:59431,13'
          Dst:             JS_ToIndex
        - Src:             'quickjs.c:59435,16'
          Dst:             JS_ThrowTypeErrorDetachedArrayBuffer
        - Src:             'quickjs.c:59437,16'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:59439,22'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:59441,13'
          Dst:             JS_ToIndex
        - Src:             'quickjs.c:59444,20'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:59448,21'
          Dst:             array_buffer_is_resizable
        - Src:             'quickjs.c:59451,11'
          Dst:             js_create_from_ctor
        - Src:             'quickjs.c:59452,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:59456,9'
          Dst:             JS_ThrowTypeErrorDetachedArrayBuffer
        - Src:             'quickjs.c:59466,9'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:59469,10'
          Dst:             js_malloc
        - Src:             'quickjs.c:59472,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:59477,18'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:59481,5'
          Dst:             list_add_tail
    - functionName:    js_typed_array_base_constructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59115
      functionLinenumberEnd: 59116
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_ThrowTypeError
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:59116,12'
          Dst:             JS_ThrowTypeError
    - functionName:    js_shared_array_buffer_constructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56208
      functionLinenumberEnd: 56209
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_array_buffer_constructor0
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56209,12'
          Dst:             js_array_buffer_constructor0
    - functionName:    js_array_buffer_constructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56200
      functionLinenumberEnd: 56201
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_array_buffer_constructor0
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56201,12'
          Dst:             js_array_buffer_constructor0
    - functionName:    JS_GetTypedArrayBuffer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56794
      functionLinenumberEnd: 56811
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          92
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - JS_DupValue
        - JS_ThrowTypeErrorArrayBufferOOB
        - get_typed_array
        - typed_array_is_oob
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56797,9'
          Dst:             get_typed_array
        - Src:             'quickjs.c:56800,9'
          Dst:             typed_array_is_oob
        - Src:             'quickjs.c:56801,16'
          Dst:             JS_ThrowTypeErrorArrayBufferOOB
        - Src:             'quickjs.c:56810,12'
          Dst:             JS_DupValue
    - functionName:    JS_NewTypedArray
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56779
      functionLinenumberEnd: 56785
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_ThrowRangeError
        - js_typed_array_constructor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56781,16'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs.c:56783,12'
          Dst:             js_typed_array_constructor
    - functionName:    JS_GetArrayBuffer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56401
      functionLinenumberEnd: 56414
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          40
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_ThrowTypeErrorDetachedArrayBuffer
        - js_get_array_buffer
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56402,27'
          Dst:             js_get_array_buffer
        - Src:             'quickjs.c:56406,9'
          Dst:             JS_ThrowTypeErrorDetachedArrayBuffer
    - functionName:    JS_NewArrayBufferCopy
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56154
      functionLinenumberEnd: 56155
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_array_buffer_constructor3
        - js_array_buffer_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56155,12'
          Dst:             js_array_buffer_constructor3
        - Src:             'quickjs.c:56155,12'
          Dst:             js_array_buffer_free
    - functionName:    JS_NewArrayBuffer
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56145
      functionLinenumberEnd: 56150
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_array_buffer_constructor3
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:56148,12'
          Dst:             js_array_buffer_constructor3
    - functionName:    JS_AddIntrinsicBigInt
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55666
      functionLinenumberEnd: 55679
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_NewCConstructor
        - js_bigint_constructor
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:55669,12'
          Dst:             JS_NewCConstructor
        - Src:             'quickjs.c:55669,12'
          Dst:             js_bigint_constructor
        - Src:             'quickjs.c:55675,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55677,5'
          Dst:             JS_FreeValue
    - functionName:    JS_NewCConstructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39231
      functionLinenumberEnd: 39292
      functionDepth:   0
      returnType:      'N/A'
      argCount:        13
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          202
      EdgeCount:       46
      CyclomaticComplexity: 14
      functionsReached:
        - JS_DefinePropertyValueStr
        - JS_DupValue
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsUndefined
        - JS_NewCFunction3
        - JS_NewObjectProtoClassAlloc
        - JS_SetConstructor2
        - JS_SetPropertyFunctionList
      functionUses:    26
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39242,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:39243,24'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:39246,24'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:39247,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39252,17'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:39259,17'
          Dst:             JS_NewObjectProtoClassAlloc
        - Src:             'quickjs.c:39261,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39264,42'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:39266,9'
          Dst:             JS_SetPropertyFunctionList
        - Src:             'quickjs.c:39270,12'
          Dst:             JS_NewCFunction3
        - Src:             'quickjs.c:39272,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:39274,9'
          Dst:             JS_SetPropertyFunctionList
        - Src:             'quickjs.c:39278,39'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:39277,13'
          Dst:             JS_DefinePropertyValueStr
        - Src:             'quickjs.c:39282,5'
          Dst:             JS_SetConstructor2
        - Src:             'quickjs.c:39284,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:39285,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:39288,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:39289,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:39290,5'
          Dst:             JS_FreeValue
    - functionName:    JS_SetConstructor2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39195
      functionLinenumberEnd: 39206
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          38
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_DefinePropertyValue
        - JS_DupValue
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39197,32'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:39196,9'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:39200,32'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:39199,9'
          Dst:             JS_DefinePropertyValue
    - functionName:    js_symbol_constructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50874
      functionLinenumberEnd: 50889
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          67
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_IsException
        - JS_IsUndefined
        - JS_NewSymbol
        - JS_ThrowTypeErrorNotAConstructor
        - JS_ToString
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:50878,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:50879,16'
          Dst:             JS_ThrowTypeErrorNotAConstructor
        - Src:             'quickjs.c:50880,22'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:50883,15'
          Dst:             JS_ToString
        - Src:             'quickjs.c:50884,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50888,12'
          Dst:             JS_NewSymbol
    - functionName:    js_random_init
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46678
      functionLinenumberEnd: 46685
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - gettimeofday
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:46680,5'
          Dst:             gettimeofday
    - functionName:    js_boolean_constructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44431
      functionLinenumberEnd: 44442
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          45
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_IsException
        - JS_IsUndefined
        - JS_SetObjectData
        - JS_ToBool
        - js_create_from_ctor
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44433,27'
          Dst:             JS_ToBool
        - Src:             'quickjs.c:44434,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:44435,15'
          Dst:             js_create_from_ctor
        - Src:             'quickjs.c:44436,14'
          Dst:             JS_IsException
        - Src:             'quickjs.c:44437,13'
          Dst:             JS_SetObjectData
    - functionName:    js_number_constructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44121
      functionLinenumberEnd: 44156
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          143
      EdgeCount:       37
      CyclomaticComplexity: 10
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_IsUndefined
        - JS_SetObjectData
        - JS_ToNumeric
        - __JS_NewFloat64
        - js_bigint_to_float64
        - js_create_from_ctor
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs.c:44129,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:44126,15'
          Dst:             JS_ToNumeric
        - Src:             'quickjs.c:44127,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:44131,19'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:44132,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:44139,21'
          Dst:             js_bigint_to_float64
        - Src:             'quickjs.c:44140,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:44141,23'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:44148,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:44149,15'
          Dst:             js_create_from_ctor
        - Src:             'quickjs.c:44150,14'
          Dst:             JS_IsException
        - Src:             'quickjs.c:44151,13'
          Dst:             JS_SetObjectData
    - functionName:    js_iterator_constructor_getset
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43059
      functionLinenumberEnd: 43074
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - JS_DefinePropertyValue
        - JS_DupValue
        - JS_IsObject
        - JS_ThrowTypeErrorNotAnObject
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:43063,14'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:43064,20'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:43066,38'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:43065,15'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:43072,16'
          Dst:             JS_DupValue
    - functionName:    js_iterator_constructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43078
      functionLinenumberEnd: 43089
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          51
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_ThrowTypeError
        - js_create_from_ctor
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:43082,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:43086,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:43088,12'
          Dst:             js_create_from_ctor
    - functionName:    js_object_constructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39514
      functionLinenumberEnd: 39532
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          51
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_GetActiveFunction
        - JS_IsUndefined
        - JS_NewObject
        - JS_ToObject
        - js_create_from_ctor
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39516,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:39518,9'
          Dst:             JS_GetActiveFunction
        - Src:             'quickjs.c:39519,15'
          Dst:             js_create_from_ctor
        - Src:             'quickjs.c:39525,19'
          Dst:             JS_NewObject
        - Src:             'quickjs.c:39528,19'
          Dst:             JS_ToObject
    - functionName:    js_object_seal
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40082
      functionLinenumberEnd: 40129
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          160
      EdgeCount:       42
      CyclomaticComplexity: 13
      functionsReached:
        - JS_DefineProperty
        - JS_DupValue
        - JS_FreePropertyEnum
        - JS_GetOwnPropertyInternal
        - JS_GetOwnPropertyNamesInternal
        - JS_IsObject
        - JS_PreventExtensions
        - JS_ThrowTypeError
        - js_free_desc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:40089,10'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:40090,16'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:40092,11'
          Dst:             JS_PreventExtensions
        - Src:             'quickjs.c:40096,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:40101,9'
          Dst:             JS_GetOwnPropertyNamesInternal
        - Src:             'quickjs.c:40110,19'
          Dst:             JS_GetOwnPropertyInternal
        - Src:             'quickjs.c:40116,17'
          Dst:             js_free_desc
        - Src:             'quickjs.c:40119,13'
          Dst:             JS_DefineProperty
        - Src:             'quickjs.c:40123,5'
          Dst:             JS_FreePropertyEnum
        - Src:             'quickjs.c:40124,12'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:40127,5'
          Dst:             JS_FreePropertyEnum
    - functionName:    js_throw_type_error
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15713
      functionLinenumberEnd: 15719
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          53
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_GetFunctionBytecode
        - JS_ThrowTypeError
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:15714,29'
          Dst:             JS_GetFunctionBytecode
        - Src:             'quickjs.c:15716,16'
          Dst:             JS_ThrowTypeError
    - functionName:    JS_NewCFunction
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1043
      functionLinenumberEnd: 1044
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_NewCFunction2
        - js_throw_type_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './quickjs.h:1044,12'
          Dst:             JS_NewCFunction2
        - Src:             './quickjs.h:1044,12'
          Dst:             js_throw_type_error
    - functionName:    __JS_EvalInternal
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36605
      functionLinenumberEnd: 36715
      functionDepth:   0
      returnType:      'N/A'
      argCount:        8
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         58
      ICount:          341
      EdgeCount:       76
      CyclomaticComplexity: 20
      functionsReached:
        - JS_DupAtom
        - JS_EvalFunctionInternal
        - JS_FreeValue
        - JS_IsException
        - JS_NewAtom
        - JS_NewModuleValue
        - __assert_fail
        - add_closure_variables
        - free_token
        - js_class_has_bytecode
        - js_create_function
        - js_free_function_def
        - js_new_function_def
        - js_new_module_def
        - js_parse_init
        - js_parse_program
        - js_resolve_module
        - push_scope
        - skip_shebang
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:36615,5'
          Dst:             js_parse_init
        - Src:             'quickjs.c:36616,5'
          Dst:             skip_shebang
        - Src:             'quickjs.c:36623,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:36624,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:36626,9'
          Dst:             js_class_has_bytecode
        - Src:             'quickjs.c:36626,9'
          Dst:             __assert_fail
        - Src:             'quickjs.c:36638,34'
          Dst:             JS_NewAtom
        - Src:             'quickjs.c:36641,17'
          Dst:             js_new_module_def
        - Src:             'quickjs.c:36647,10'
          Dst:             js_new_function_def
        - Src:             'quickjs.c:36666,21'
          Dst:             JS_DupAtom
        - Src:             'quickjs.c:36668,13'
          Dst:             add_closure_variables
        - Src:             'quickjs.c:36679,5'
          Dst:             push_scope
        - Src:             'quickjs.c:36682,11'
          Dst:             js_parse_program
        - Src:             'quickjs.c:36685,9'
          Dst:             free_token
        - Src:             'quickjs.c:36686,9'
          Dst:             js_free_function_def
        - Src:             'quickjs.c:36694,15'
          Dst:             js_create_function
        - Src:             'quickjs.c:36695,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:36700,13'
          Dst:             js_resolve_module
        - Src:             'quickjs.c:36702,19'
          Dst:             JS_NewModuleValue
        - Src:             'quickjs.c:36707,19'
          Dst:             JS_EvalFunctionInternal
        - Src:             'quickjs.c:36713,9'
          Dst:             JS_FreeValue
    - functionName:    skip_shebang
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23186
      functionLinenumberEnd: 23208
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          99
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - unicode_from_utf8
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:23196,21'
          Dst:             unicode_from_utf8
    - functionName:    js_date_constructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54709
      functionLinenumberEnd: 54776
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         55
      ICount:          265
      EdgeCount:       75
      CyclomaticComplexity: 22
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_IsNumber
        - JS_IsString
        - JS_IsUndefined
        - JS_SetObjectData
        - JS_ToFloat64
        - JS_ToFloat64Free
        - JS_ToPrimitive
        - __JS_NewFloat64
        - date_now
        - get_date_string
        - js_Date_parse
        - js_create_from_ctor
        - set_date_fields_checked
        - time_clip
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:54715,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:54721,15'
          Dst:             date_now
        - Src:             'quickjs.c:54726,49'
          Dst:             JS_IsNumber
        - Src:             'quickjs.c:54727,21'
          Dst:             JS_ToFloat64
        - Src:             'quickjs.c:54733,13'
          Dst:             JS_ToPrimitive
        - Src:             'quickjs.c:54734,13'
          Dst:             JS_IsString
        - Src:             'quickjs.c:54735,18'
          Dst:             js_Date_parse
        - Src:             'quickjs.c:54736,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:54737,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:54739,17'
          Dst:             JS_ToFloat64Free
        - Src:             'quickjs.c:54742,17'
          Dst:             JS_ToFloat64Free
        - Src:             'quickjs.c:0,0'
          Dst:             time_clip
        - Src:             'quickjs.c:54751,17'
          Dst:             JS_ToFloat64
        - Src:             'quickjs.c:54754,15'
          Dst:             set_date_fields_checked
        - Src:             'quickjs.c:54764,10'
          Dst:             js_create_from_ctor
        - Src:             'quickjs.c:54765,10'
          Dst:             JS_IsException
        - Src:             'quickjs.c:54766,35'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:54766,9'
          Dst:             JS_SetObjectData
        - Src:             'quickjs.c:54771,13'
          Dst:             get_date_string
        - Src:             'quickjs.c:54772,9'
          Dst:             JS_FreeValue
    - functionName:    JS_NewDate
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55451
      functionLinenumberEnd: 55457
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_IsException
        - JS_SetObjectData
        - __JS_NewFloat64
        - js_create_from_ctor
        - time_clip
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:55452,19'
          Dst:             js_create_from_ctor
        - Src:             'quickjs.c:55453,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55455,53'
          Dst:             time_clip
        - Src:             'quickjs.c:55455,32'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:55455,5'
          Dst:             JS_SetObjectData
    - functionName:    js_function_constructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40471
      functionLinenumberEnd: 40537
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          246
      EdgeCount:       68
      CyclomaticComplexity: 20
      functionsReached:
        - JS_DupValue
        - JS_EvalObject
        - JS_FreeValue
        - JS_GetFunctionRealm
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsObject
        - JS_IsUndefined
        - JS_SetPrototypeInternal
        - string_buffer_concat_value
        - string_buffer_end
        - string_buffer_free
        - string_buffer_init
        - string_buffer_putc8
        - string_buffer_puts8
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:40477,5'
          Dst:             string_buffer_init
        - Src:             'quickjs.c:40478,5'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:40483,5'
          Dst:             string_buffer_puts8
        - Src:             'quickjs.c:40481,9'
          Dst:             string_buffer_puts8
        - Src:             'quickjs.c:40483,5'
          Dst:             string_buffer_puts8
        - Src:             'quickjs.c:40486,9'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:40488,5'
          Dst:             string_buffer_puts8
        - Src:             'quickjs.c:40495,13'
          Dst:             string_buffer_concat_value
        - Src:             'quickjs.c:40498,5'
          Dst:             string_buffer_puts8
        - Src:             'quickjs.c:40493,13'
          Dst:             string_buffer_putc8
        - Src:             'quickjs.c:40495,13'
          Dst:             string_buffer_concat_value
        - Src:             'quickjs.c:40498,5'
          Dst:             string_buffer_puts8
        - Src:             'quickjs.c:40500,13'
          Dst:             string_buffer_concat_value
        - Src:             'quickjs.c:40503,5'
          Dst:             string_buffer_puts8
        - Src:             'quickjs.c:40504,9'
          Dst:             string_buffer_end
        - Src:             'quickjs.c:40505,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40508,11'
          Dst:             JS_EvalObject
        - Src:             'quickjs.c:40509,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:40510,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40512,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:40514,17'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:40515,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:40517,14'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:40519,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:40520,21'
          Dst:             JS_GetFunctionRealm
        - Src:             'quickjs.c:40523,21'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:40525,15'
          Dst:             JS_SetPrototypeInternal
        - Src:             'quickjs.c:40526,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:40533,5'
          Dst:             string_buffer_free
        - Src:             'quickjs.c:40535,5'
          Dst:             JS_FreeValue
    - functionName:    js_async_generator_function_call
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21177
      functionLinenumberEnd: 21205
      functionDepth:   0
      returnType:      'N/A'
      argCount:        8
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          69
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_SetOpaque
        - async_func_init
        - async_func_resume
        - init_list_head
        - js_async_generator_free
        - js_create_from_ctor
        - js_mallocz
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:21181,9'
          Dst:             js_mallocz
        - Src:             'quickjs.c:21185,5'
          Dst:             init_list_head
        - Src:             'quickjs.c:21186,21'
          Dst:             async_func_init
        - Src:             'quickjs.c:21191,16'
          Dst:             async_func_resume
        - Src:             'quickjs.c:21192,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:21194,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:21196,11'
          Dst:             js_create_from_ctor
        - Src:             'quickjs.c:21197,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:21200,5'
          Dst:             JS_SetOpaque
        - Src:             'quickjs.c:21203,5'
          Dst:             js_async_generator_free
    - functionName:    js_async_function_resolve_call
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20722
      functionLinenumberEnd: 20741
      functionDepth:   0
      returnType:      'N/A'
      argCount:        8
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_DupValue
        - JS_Throw
        - js_async_function_resume
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20734,23'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:20734,9'
          Dst:             JS_Throw
        - Src:             'quickjs.c:20737,31'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:20739,5'
          Dst:             js_async_function_resume
    - functionName:    js_promise_resolve_function_call
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52888
      functionLinenumberEnd: 52934
      functionDepth:   0
      returnType:      'N/A'
      argCount:        8
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          136
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - JS_EnqueueJob
        - JS_FreeValue
        - JS_GetException
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsFunction
        - JS_IsObject
        - JS_ThrowTypeError
        - fulfill_or_reject_promise
        - js_promise_resolve_thenable_job
        - js_same_value
        - reject_promise
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:52909,23'
          Dst:             JS_IsObject
        - Src:             'quickjs.c:52911,16'
          Dst:             js_same_value
        - Src:             'quickjs.c:52912,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:52915,12'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:52916,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52919,17'
          Dst:             JS_GetException
        - Src:             'quickjs.c:52920,9'
          Dst:             reject_promise
        - Src:             'quickjs.c:52921,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52922,17'
          Dst:             JS_IsFunction
        - Src:             'quickjs.c:52923,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52925,9'
          Dst:             fulfill_or_reject_promise
        - Src:             'quickjs.c:52930,9'
          Dst:             JS_EnqueueJob
        - Src:             'quickjs.c:52930,9'
          Dst:             js_promise_resolve_thenable_job
        - Src:             'quickjs.c:52931,9'
          Dst:             JS_FreeValue
    - functionName:    JS_SetHostPromiseRejectionTracker
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52735
      functionLinenumberEnd: 52738
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_proxy_call
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50678
      functionLinenumberEnd: 50708
      functionDepth:   0
      returnType:      'N/A'
      argCount:        8
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          113
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - JS_Call
        - JS_FreeValue
        - JS_IsException
        - JS_IsUndefined
        - JS_ThrowTypeError
        - get_proxy_method
        - js_create_array
        - js_proxy_call_constructor
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:50684,16'
          Dst:             js_proxy_call_constructor
        - Src:             'quickjs.c:50686,9'
          Dst:             get_proxy_method
        - Src:             'quickjs.c:50690,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50691,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:50693,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:50694,16'
          Dst:             JS_Call
        - Src:             'quickjs.c:50695,17'
          Dst:             js_create_array
        - Src:             'quickjs.c:50696,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50703,11'
          Dst:             JS_Call
        - Src:             'quickjs.c:50705,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:50706,5'
          Dst:             JS_FreeValue
    - functionName:    JS_ParseJSON
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49008
      functionLinenumberEnd: 49009
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_ParseJSON3
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:49009,12'
          Dst:             JS_ParseJSON3
    - functionName:    JS_ParseJSON2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49002
      functionLinenumberEnd: 49003
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_ParseJSON3
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:49003,12'
          Dst:             JS_ParseJSON3
    - functionName:    js_regexp_constructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47034
      functionLinenumberEnd: 47113
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          293
      EdgeCount:       66
      CyclomaticComplexity: 20
      functionsReached:
        - JS_AtomToString
        - JS_DupValue
        - JS_FreeValue
        - JS_GetActiveFunction
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_IsUndefined
        - JS_ToString
        - js_compile_regexp
        - js_create_from_ctor
        - js_get_regexp
        - js_is_regexp
        - js_regexp_set_internal
        - js_same_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:47042,21'
          Dst:             js_is_regexp
        - Src:             'quickjs.c:47045,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:47047,22'
          Dst:             JS_GetActiveFunction
        - Src:             'quickjs.c:47048,30'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:47051,20'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:47052,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47054,19'
          Dst:             js_same_value
        - Src:             'quickjs.c:47055,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47057,24'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:47060,10'
          Dst:             js_get_regexp
        - Src:             'quickjs.c:47060,10'
          Dst:             js_get_regexp
        - Src:             'quickjs.c:47063,19'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:47064,13'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:47065,18'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:47066,19'
          Dst:             js_create_from_ctor
        - Src:             'quickjs.c:47067,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47071,21'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:47075,23'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:47076,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47078,17'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:47079,25'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:47080,21'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47086,23'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:0,0'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:47089,13'
          Dst:             JS_IsUndefined
        - Src:             'quickjs.c:47090,23'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:47093,23'
          Dst:             JS_ToString
        - Src:             'quickjs.c:47094,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47095,17'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47099,11'
          Dst:             js_create_from_ctor
        - Src:             'quickjs.c:47100,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47102,10'
          Dst:             js_compile_regexp
        - Src:             'quickjs.c:47103,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:47105,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47107,12'
          Dst:             js_regexp_set_internal
        - Src:             'quickjs.c:47109,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47110,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:47111,5'
          Dst:             JS_FreeValue
    - functionName:    JS_AddIntrinsicRegExpCompiler
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48566
      functionLinenumberEnd: 48568
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lre_realloc
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47319
      functionLinenumberEnd: 47322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_realloc_rt
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:47322,12'
          Dst:             js_realloc_rt
    - functionName:    lre_check_timeout
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47311
      functionLinenumberEnd: 47315
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lre_check_stack_overflow
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47305
      functionLinenumberEnd: 47307
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_check_stack_overflow
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:47307,12'
          Dst:             js_check_stack_overflow
    - functionName:    js_string_codePointRange
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44714
      functionLinenumberEnd: 44736
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          118
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - JS_ToUint32
        - max_uint32
        - min_uint32
        - string_buffer_end
        - string_buffer_init2
        - string_buffer_putc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:44718,9'
          Dst:             JS_ToUint32
        - Src:             'quickjs.c:44719,9'
          Dst:             JS_ToUint32
        - Src:             'quickjs.c:44721,11'
          Dst:             min_uint32
        - Src:             'quickjs.c:44728,20'
          Dst:             max_uint32
        - Src:             'quickjs.c:44730,9'
          Dst:             string_buffer_init2
        - Src:             'quickjs.c:44733,9'
          Dst:             string_buffer_putc
        - Src:             'quickjs.c:44735,12'
          Dst:             string_buffer_end
    - functionName:    JS_SetConstructor
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39211
      functionLinenumberEnd: 39212
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_SetConstructor2
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39212,12'
          Dst:             JS_SetConstructor2
    - functionName:    JS_SetModuleExportList
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39154
      functionLinenumberEnd: 39188
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          137
      EdgeCount:       24
      CyclomaticComplexity: 4
      functionsReached:
        - JS_NewCFunction2
        - JS_NewObjectProtoList
        - JS_NewString
        - JS_SetModuleExport
        - __JS_NewFloat64
        - abort
      functionUses:    2
      BranchProfiles:
        - Branch String:   'quickjs.c:39160,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:39162,19'
          Dst:             JS_NewCFunction2
        - Src:             'quickjs.c:39166,19'
          Dst:             JS_NewString
        - Src:             'quickjs.c:39172,19'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:39175,19'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:39178,19'
          Dst:             JS_NewObjectProtoList
        - Src:             'quickjs.c:39182,13'
          Dst:             abort
        - Src:             'quickjs.c:39184,13'
          Dst:             JS_SetModuleExport
    - functionName:    JS_SetModuleExport
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29304
      functionLinenumberEnd: 29319
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          39
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeAtom
        - JS_FreeValue
        - JS_NewAtom
        - find_export_entry
        - set_value
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:29307,12'
          Dst:             JS_NewAtom
        - Src:             'quickjs.c:29310,10'
          Dst:             find_export_entry
        - Src:             'quickjs.c:29311,5'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:29314,5'
          Dst:             set_value
        - Src:             'quickjs.c:29317,5'
          Dst:             JS_FreeValue
    - functionName:    JS_AddModuleExportList
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39143
      functionLinenumberEnd: 39150
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          43
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_AddModuleExport
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:39146,13'
          Dst:             JS_AddModuleExport
    - functionName:    JS_AddModuleExport
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29287
      functionLinenumberEnd: 29300
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          32
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeAtom
        - JS_NewAtom
        - add_export_entry2
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:29290,12'
          Dst:             JS_NewAtom
        - Src:             'quickjs.c:29293,10'
          Dst:             add_export_entry2
        - Src:             'quickjs.c:29295,5'
          Dst:             JS_FreeAtom
    - functionName:    bc_reader_free
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38880
      functionLinenumberEnd: 38889
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          57
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeAtom
        - js_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:38884,13'
          Dst:             JS_FreeAtom
        - Src:             'quickjs.c:38886,9'
          Dst:             js_free
        - Src:             'quickjs.c:38888,5'
          Dst:             js_free
    - functionName:    JS_ReadObjectAtoms
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38840
      functionLinenumberEnd: 38877
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         28
      ICount:          136
      EdgeCount:       39
      CyclomaticComplexity: 13
      functionsReached:
        - JS_NewAtomStr
        - JS_ReadString
        - JS_ThrowSyntaxError
        - bc_get_leb128
        - bc_get_u8
        - js_mallocz
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:38846,9'
          Dst:             bc_get_u8
        - Src:             'quickjs.c:38849,9'
          Dst:             JS_ThrowSyntaxError
        - Src:             'quickjs.c:38853,9'
          Dst:             bc_get_leb128
        - Src:             'quickjs.c:38859,26'
          Dst:             js_mallocz
        - Src:             'quickjs.c:38865,13'
          Dst:             JS_ReadString
        - Src:             'quickjs.c:38868,16'
          Dst:             JS_NewAtomStr
    - functionName:    JS_ReadObject
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38893
      functionLinenumberEnd: 38920
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          84
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_ReadObjectAtoms
        - JS_ReadObjectRec
        - bc_reader_free
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:38913,9'
          Dst:             JS_ReadObjectAtoms
        - Src:             'quickjs.c:38916,15'
          Dst:             JS_ReadObjectRec
        - Src:             'quickjs.c:38918,5'
          Dst:             bc_reader_free
    - functionName:    JS_WriteObject
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37768
      functionLinenumberEnd: 37769
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_WriteObject2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:37769,12'
          Dst:             JS_WriteObject2
    - functionName:    JS_WriteObject2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37724
      functionLinenumberEnd: 37764
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          131
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - JS_WriteObjectAtoms
        - JS_WriteObjectRec
        - dbuf_free
        - js_dbuf_init
        - js_free
        - js_object_list_end
        - js_object_list_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:37737,5'
          Dst:             js_dbuf_init
        - Src:             'quickjs.c:37738,5'
          Dst:             js_object_list_init
        - Src:             'quickjs.c:37740,9'
          Dst:             JS_WriteObjectRec
        - Src:             'quickjs.c:37742,9'
          Dst:             JS_WriteObjectAtoms
        - Src:             'quickjs.c:37744,5'
          Dst:             js_object_list_end
        - Src:             'quickjs.c:37745,5'
          Dst:             js_free
        - Src:             'quickjs.c:37746,5'
          Dst:             js_free
        - Src:             'quickjs.c:37754,5'
          Dst:             js_object_list_end
        - Src:             'quickjs.c:37755,5'
          Dst:             js_free
        - Src:             'quickjs.c:37756,5'
          Dst:             js_free
        - Src:             'quickjs.c:37757,5'
          Dst:             dbuf_free
    - functionName:    js_object_list_init
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36809
      functionLinenumberEnd: 36811
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_WriteObjectAtoms
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37689
      functionLinenumberEnd: 37720
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          88
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - JS_WriteString
        - bc_put_leb128
        - bc_put_u8
        - dbuf_claim
        - dbuf_free
        - js_dbuf_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:37695,5'
          Dst:             js_dbuf_init
        - Src:             'quickjs.c:37696,5'
          Dst:             bc_put_u8
        - Src:             'quickjs.c:37698,5'
          Dst:             bc_put_leb128
        - Src:             'quickjs.c:37701,9'
          Dst:             JS_WriteString
        - Src:             'quickjs.c:37709,9'
          Dst:             dbuf_claim
        - Src:             'quickjs.c:37714,5'
          Dst:             dbuf_free
        - Src:             'quickjs.c:37718,5'
          Dst:             dbuf_free
    - functionName:    js_object_list_end
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36890
      functionLinenumberEnd: 36893
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:36891,5'
          Dst:             js_free
        - Src:             'quickjs.c:36892,5'
          Dst:             js_free
    - functionName:    JS_ResolveModule
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36780
      functionLinenumberEnd: 36789
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          34
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - js_free_modules
        - js_resolve_module
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:36783,13'
          Dst:             js_resolve_module
        - Src:             'quickjs.c:36784,13'
          Dst:             js_free_modules
    - functionName:    JS_Eval
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36774
      functionLinenumberEnd: 36775
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_EvalThis
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:36775,12'
          Dst:             JS_EvalThis
    - functionName:    JS_EvalThis
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36761
      functionLinenumberEnd: 36770
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          32
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - JS_EvalInternal
        - __assert_fail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:36765,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:36767,11'
          Dst:             JS_EvalInternal
    - functionName:    JS_LoadModule
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30442
      functionLinenumberEnd: 30453
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_LoadModuleInternal
        - JS_NewPromiseCapability
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:30445,15'
          Dst:             JS_NewPromiseCapability
        - Src:             'quickjs.c:30446,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:30448,5'
          Dst:             JS_LoadModuleInternal
        - Src:             'quickjs.c:30450,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:30451,5'
          Dst:             JS_FreeValue
    - functionName:    JS_GetModuleName
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30309
      functionLinenumberEnd: 30310
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupAtom
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:30310,12'
          Dst:             JS_DupAtom
    - functionName:    JS_SetModuleLoaderFunc2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29348
      functionLinenumberEnd: 29354
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_SetModuleLoaderFunc
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29335
      functionLinenumberEnd: 29341
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_GetModulePrivateValue
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29328
      functionLinenumberEnd: 29329
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:29329,12'
          Dst:             JS_DupValue
    - functionName:    JS_SetModulePrivateValue
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29322
      functionLinenumberEnd: 29324
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - set_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:29323,5'
          Dst:             set_value
    - functionName:    JS_NewCModule
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29273
      functionLinenumberEnd: 29284
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          33
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_NewAtom
        - js_new_module_def
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:29276,12'
          Dst:             JS_NewAtom
        - Src:             'quickjs.c:29279,9'
          Dst:             js_new_module_def
    - functionName:    JS_DetectModule
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23217
      functionLinenumberEnd: 23231
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       9
      CyclomaticComplexity: 2
      functionsReached:
        - simple_next_token
        - skip_shebang
      functionUses:    0
      BranchProfiles:
        - Branch String:   'quickjs.c:23222,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:23221,5'
          Dst:             skip_shebang
        - Src:             'quickjs.c:23222,12'
          Dst:             simple_next_token
        - Src:             'quickjs.c:23224,15'
          Dst:             simple_next_token
    - functionName:    JS_SameValueZero
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15526
      functionLinenumberEnd: 15527
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_same_value_zero
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:15527,12'
          Dst:             js_same_value_zero
    - functionName:    JS_SameValue
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15514
      functionLinenumberEnd: 15515
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_same_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:15515,12'
          Dst:             js_same_value
    - functionName:    js_strict_eq
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15495
      functionLinenumberEnd: 15497
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
        - js_strict_eq2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:15497,26'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:15497,49'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:15496,12'
          Dst:             js_strict_eq2
    - functionName:    JS_StrictEq
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15502
      functionLinenumberEnd: 15503
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_strict_eq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:15503,12'
          Dst:             js_strict_eq
    - functionName:    JS_PrintValue
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14043
      functionLinenumberEnd: 14045
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_PrintValueInternal
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:14044,5'
          Dst:             JS_PrintValueInternal
    - functionName:    JS_PrintValueInternal
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14013
      functionLinenumberEnd: 14033
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          82
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - JS_PrintValueSetDefaultOptions
        - js_print_value
        - min_int
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:14018,9'
          Dst:             JS_PrintValueSetDefaultOptions
        - Src:             'quickjs.c:14022,32'
          Dst:             min_int
        - Src:             'quickjs.c:14032,5'
          Dst:             js_print_value
    - functionName:    JS_PrintValueSetDefaultOptions
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14003
      functionLinenumberEnd: 14008
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_PrintValueRT
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14037
      functionLinenumberEnd: 14039
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_PrintValueInternal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:14038,5'
          Dst:             JS_PrintValueInternal
    - functionName:    JS_ToInt64Ext
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12912
      functionLinenumberEnd: 12917
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          26
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_IsBigInt
        - JS_ToBigInt64
        - JS_ToInt64
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:12913,9'
          Dst:             JS_IsBigInt
        - Src:             'quickjs.c:12914,16'
          Dst:             JS_ToBigInt64
        - Src:             'quickjs.c:12916,16'
          Dst:             JS_ToInt64
    - functionName:    JS_SetIsHTMLDDA
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10742
      functionLinenumberEnd: 10748
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          21
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_GetAnyOpaque
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10651
      functionLinenumberEnd: 10660
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          25
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_SetPropertyStr
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9701
      functionLinenumberEnd: 9712
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeAtom
        - JS_FreeValue
        - JS_NewAtom
        - JS_SetPropertyInternal
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:9704,12'
          Dst:             JS_NewAtom
        - Src:             'quickjs.c:9706,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:9709,11'
          Dst:             JS_SetPropertyInternal
        - Src:             'quickjs.c:9710,5'
          Dst:             JS_FreeAtom
    - functionName:    JS_GetPropertyStr
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8765
      functionLinenumberEnd: 8774
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeAtom
        - JS_GetPropertyInternal
        - JS_NewAtom
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:8768,12'
          Dst:             JS_NewAtom
        - Src:             'quickjs.c:8771,11'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:8772,5'
          Dst:             JS_FreeAtom
    - functionName:    JS_GetOwnPropertyNames
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8404
      functionLinenumberEnd: 8411
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_GetOwnPropertyNamesInternal
        - JS_ThrowTypeErrorNotAnObject
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:8406,9'
          Dst:             JS_ThrowTypeErrorNotAnObject
        - Src:             'quickjs.c:8409,12'
          Dst:             JS_GetOwnPropertyNamesInternal
    - functionName:    JS_SetPrototype
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7589
      functionLinenumberEnd: 7590
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_SetPrototypeInternal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7590,12'
          Dst:             JS_SetPrototypeInternal
    - functionName:    JS_NewError
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7233
      functionLinenumberEnd: 7234
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_NewObjectClass
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:7234,12'
          Dst:             JS_NewObjectClass
    - functionName:    JS_HasException
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6974
      functionLinenumberEnd: 6975
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_IsUninitialized
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:6975,13'
          Dst:             JS_IsUninitialized
    - functionName:    JS_GetGlobalObject
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6949
      functionLinenumberEnd: 6950
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:6950,12'
          Dst:             JS_DupValue
    - functionName:    JS_DumpMemoryUsage
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6824
      functionLinenumberEnd: 6946
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         89
      ICount:          484
      EdgeCount:       119
      CyclomaticComplexity: 32
      functionsReached:
        - JS_AtomGetStrRT
        - fprintf
        - fputc
        - fwrite
        - js_free_rt
        - js_malloc_rt
        - js_malloc_usable_size_rt
        - min_uint32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:6825,5'
          Dst:             fprintf
        - Src:             'quickjs.c:6842,23'
          Dst:             js_malloc_rt
        - Src:             'quickjs.c:6844,38'
          Dst:             js_malloc_usable_size_rt
        - Src:             'quickjs.c:6847,21'
          Dst:             fprintf
        - Src:             'quickjs.c:6850,17'
          Dst:             js_free_rt
        - Src:             'quickjs.c:6842,23'
          Dst:             js_malloc_rt
        - Src:             'quickjs.c:6844,38'
          Dst:             js_malloc_usable_size_rt
        - Src:             'quickjs.c:6847,21'
          Dst:             fprintf
        - Src:             'quickjs.c:6850,17'
          Dst:             js_free_rt
        - Src:             'quickjs.c:6842,23'
          Dst:             js_malloc_rt
        - Src:             'quickjs.c:6844,38'
          Dst:             js_malloc_usable_size_rt
        - Src:             'quickjs.c:6847,21'
          Dst:             fprintf
        - Src:             'quickjs.c:6850,17'
          Dst:             js_free_rt
        - Src:             'quickjs.c:6842,23'
          Dst:             js_malloc_rt
        - Src:             'quickjs.c:6844,38'
          Dst:             js_malloc_usable_size_rt
        - Src:             'quickjs.c:6847,21'
          Dst:             fprintf
        - Src:             'quickjs.c:6850,17'
          Dst:             js_free_rt
        - Src:             'quickjs.c:6842,23'
          Dst:             js_malloc_rt
        - Src:             'quickjs.c:6844,38'
          Dst:             js_malloc_usable_size_rt
        - Src:             'quickjs.c:6847,21'
          Dst:             fprintf
        - Src:             'quickjs.c:6850,17'
          Dst:             js_free_rt
        - Src:             'quickjs.c:6854,13'
          Dst:             fwrite
        - Src:             'quickjs.c:6868,13'
          Dst:             fwrite
        - Src:             'quickjs.c:6865,33'
          Dst:             min_uint32
        - Src:             'quickjs.c:6868,13'
          Dst:             fwrite
        - Src:             'quickjs.c:6870,17'
          Dst:             fprintf
        - Src:             'quickjs.c:6875,29'
          Dst:             JS_AtomGetStrRT
        - Src:             'quickjs.c:6874,21'
          Dst:             fprintf
        - Src:             'quickjs.c:6879,17'
          Dst:             fprintf
        - Src:             'quickjs.c:6881,9'
          Dst:             fputc
        - Src:             'quickjs.c:6884,5'
          Dst:             fprintf
        - Src:             'quickjs.c:6887,9'
          Dst:             fprintf
        - Src:             'quickjs.c:6890,9'
          Dst:             fprintf
        - Src:             'quickjs.c:6896,9'
          Dst:             fprintf
        - Src:             'quickjs.c:6901,9'
          Dst:             fprintf
        - Src:             'quickjs.c:6906,9'
          Dst:             fprintf
        - Src:             'quickjs.c:6909,9'
          Dst:             fprintf
        - Src:             'quickjs.c:6912,9'
          Dst:             fprintf
        - Src:             'quickjs.c:6917,9'
          Dst:             fprintf
        - Src:             'quickjs.c:6919,9'
          Dst:             fprintf
        - Src:             'quickjs.c:6923,13'
          Dst:             fprintf
        - Src:             'quickjs.c:6930,9'
          Dst:             fprintf
        - Src:             'quickjs.c:6933,9'
          Dst:             fprintf
        - Src:             'quickjs.c:6935,13'
          Dst:             fprintf
        - Src:             'quickjs.c:6936,13'
          Dst:             fprintf
        - Src:             'quickjs.c:6943,9'
          Dst:             fprintf
    - functionName:    fprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    25
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fwrite
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fputc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    compute_jsstring_size
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6467
      functionLinenumberEnd: 6474
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          41
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    compute_bytecode_size
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6477
      functionLinenumberEnd: 6513
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          184
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - compute_value_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:6489,13'
          Dst:             compute_value_size
    - functionName:    compute_value_size
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6516
      functionLinenumberEnd: 6525
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          25
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - compute_jsstring_size
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:6519,9'
          Dst:             compute_jsstring_size
    - functionName:    JS_ComputeMemoryUsage
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6528
      functionLinenumberEnd: 6821
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         163
      ICount:          1108
      EdgeCount:       215
      CyclomaticComplexity: 54
      functionsReached:
        - atom_is_free
        - compute_bytecode_size
        - compute_jsstring_size
        - compute_value_size
        - get_shape_prop
        - get_shape_size
      functionUses:    0
      BranchProfiles:
        - Branch String:   'quickjs.c:6625,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:6554,30'
          Dst:             get_shape_size
        - Src:             'quickjs.c:6572,25'
          Dst:             compute_value_size
        - Src:             'quickjs.c:6584,13'
          Dst:             compute_value_size
        - Src:             'quickjs.c:6585,13'
          Dst:             compute_value_size
        - Src:             'quickjs.c:6597,13'
          Dst:             compute_bytecode_size
        - Src:             'quickjs.c:6609,19'
          Dst:             get_shape_prop
        - Src:             'quickjs.c:6613,21'
          Dst:             compute_value_size
        - Src:             'quickjs.c:6622,30'
          Dst:             get_shape_size
        - Src:             'quickjs.c:6637,25'
          Dst:             compute_value_size
        - Src:             'quickjs.c:6651,25'
          Dst:             compute_value_size
        - Src:             'quickjs.c:6662,13'
          Dst:             compute_value_size
        - Src:             'quickjs.c:6683,33'
          Dst:             compute_value_size
        - Src:             'quickjs.c:6695,21'
          Dst:             compute_value_size
        - Src:             'quickjs.c:6706,25'
          Dst:             compute_value_size
        - Src:             'quickjs.c:6714,13'
          Dst:             compute_jsstring_size
        - Src:             'quickjs.c:6715,13'
          Dst:             compute_jsstring_size
        - Src:             'quickjs.c:6722,21'
          Dst:             compute_value_size
        - Src:             'quickjs.c:6791,30'
          Dst:             get_shape_size
        - Src:             'quickjs.c:6802,14'
          Dst:             atom_is_free
    - functionName:    JS_NewClass1
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3446
      functionLinenumberEnd: 3491
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          210
      EdgeCount:       47
      CyclomaticComplexity: 14
      functionsReached:
        - JS_DupAtomRT
        - js_realloc_rt
        - max_int
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3459,28'
          Dst:             max_int
        - Src:             'quickjs.c:3458,20'
          Dst:             max_int
        - Src:             'quickjs.c:3465,23'
          Dst:             js_realloc_rt
        - Src:             'quickjs.c:3474,27'
          Dst:             js_realloc_rt
        - Src:             'quickjs.c:3485,22'
          Dst:             JS_DupAtomRT
    - functionName:    __JS_NewAtomInit
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2924
      functionLinenumberEnd: 2932
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __JS_NewAtom
        - js_alloc_string_rt
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:2926,9'
          Dst:             js_alloc_string_rt
        - Src:             'quickjs.c:2931,12'
          Dst:             __JS_NewAtom
    - functionName:    JS_NewClass
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3494
      functionLinenumberEnd: 3508
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          42
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeAtomRT
        - JS_NewClass1
        - __JS_FindAtom
        - __JS_NewAtomInit
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3498,11'
          Dst:             strlen
        - Src:             'quickjs.c:3499,12'
          Dst:             __JS_FindAtom
        - Src:             'quickjs.c:3501,16'
          Dst:             __JS_NewAtomInit
        - Src:             'quickjs.c:3505,11'
          Dst:             JS_NewClass1
        - Src:             'quickjs.c:3506,5'
          Dst:             JS_FreeAtomRT
    - functionName:    JS_IsRegisteredClass
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3437
      functionLinenumberEnd: 3439
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_GetClassID
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3428
      functionLinenumberEnd: 3434
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          21
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_NewClassID
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3411
      functionLinenumberEnd: 3424
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - pthread_mutex_lock
        - pthread_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:3414,5'
          Dst:             pthread_mutex_lock
        - Src:             'quickjs.c:3422,5'
          Dst:             pthread_mutex_unlock
    - functionName:    update_stack_limit
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2429
      functionLinenumberEnd: 2435
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          23
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_SetMaxStackSize
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2438
      functionLinenumberEnd: 2441
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - update_stack_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:2440,5'
          Dst:             update_stack_limit
    - functionName:    JS_GetRuntime
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2424
      functionLinenumberEnd: 2425
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    19
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_GetClassProto
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2267
      functionLinenumberEnd: 2271
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          34
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - JS_DupValue
        - __assert_fail
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:2269,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:2270,12'
          Dst:             JS_DupValue
    - functionName:    JS_SetClassProto
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2260
      functionLinenumberEnd: 2264
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          31
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - __assert_fail
        - set_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:2262,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:2263,5'
          Dst:             set_value
    - functionName:    JS_SetContextOpaque
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2245
      functionLinenumberEnd: 2247
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_GetContextOpaque
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2240
      functionLinenumberEnd: 2241
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_AddIntrinsicWeakRef
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60673
      functionLinenumberEnd: 60710
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          94
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_IsRegisteredClass
        - JS_NewCConstructor
        - init_class_range
        - js_finrec_constructor
        - js_weakref_constructor
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:60678,10'
          Dst:             JS_IsRegisteredClass
        - Src:             'quickjs.c:60679,13'
          Dst:             init_class_range
        - Src:             'quickjs.c:60683,11'
          Dst:             JS_NewCConstructor
        - Src:             'quickjs.c:60683,11'
          Dst:             js_weakref_constructor
        - Src:             'quickjs.c:60689,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:60691,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:60694,10'
          Dst:             JS_IsRegisteredClass
        - Src:             'quickjs.c:60695,13'
          Dst:             init_class_range
        - Src:             'quickjs.c:60700,11'
          Dst:             JS_NewCConstructor
        - Src:             'quickjs.c:60700,11'
          Dst:             js_finrec_constructor
        - Src:             'quickjs.c:60706,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:60708,5'
          Dst:             JS_FreeValue
    - functionName:    init_class_range
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1610
      functionLinenumberEnd: 1623
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          46
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_NewClass1
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1619,13'
          Dst:             JS_NewClass1
    - functionName:    JS_AddIntrinsicPromise
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53941
      functionLinenumberEnd: 54020
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          168
      EdgeCount:       29
      CyclomaticComplexity: 10
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_IsRegisteredClass
        - JS_NewCConstructor
        - JS_NewObjectProtoList
        - JS_SetConstructor2
        - init_class_range
        - js_function_constructor
        - js_promise_constructor
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:53946,10'
          Dst:             JS_IsRegisteredClass
        - Src:             'quickjs.c:53947,13'
          Dst:             init_class_range
        - Src:             'quickjs.c:53959,12'
          Dst:             JS_NewCConstructor
        - Src:             'quickjs.c:53959,12'
          Dst:             js_promise_constructor
        - Src:             'quickjs.c:53965,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53971,12'
          Dst:             JS_NewCConstructor
        - Src:             'quickjs.c:53971,12'
          Dst:             js_function_constructor
        - Src:             'quickjs.c:53977,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53979,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:53983,9'
          Dst:             JS_NewObjectProtoList
        - Src:             'quickjs.c:53986,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53991,9'
          Dst:             JS_NewObjectProtoList
        - Src:             'quickjs.c:53994,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:53999,9'
          Dst:             JS_NewObjectProtoList
        - Src:             'quickjs.c:54002,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:54007,12'
          Dst:             JS_NewCConstructor
        - Src:             'quickjs.c:54007,12'
          Dst:             js_function_constructor
        - Src:             'quickjs.c:54013,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:54015,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:54017,12'
          Dst:             JS_SetConstructor2
    - functionName:    JS_AddIntrinsicTypedArrays
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60318
      functionLinenumberEnd: 60417
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         29
      ICount:          185
      EdgeCount:       40
      CyclomaticComplexity: 13
      functionsReached:
        - JS_AddIntrinsicAtomics
        - JS_AtomGetStr
        - JS_DefinePropertyValue
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_NewCConstructor
        - js_array_buffer_constructor
        - js_dataview_constructor
        - js_shared_array_buffer_constructor
        - js_typed_array_base_constructor
        - js_typed_array_constructor
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:60322,11'
          Dst:             JS_NewCConstructor
        - Src:             'quickjs.c:60322,11'
          Dst:             js_array_buffer_constructor
        - Src:             'quickjs.c:60328,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:60330,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:60332,11'
          Dst:             JS_NewCConstructor
        - Src:             'quickjs.c:60332,11'
          Dst:             js_shared_array_buffer_constructor
        - Src:             'quickjs.c:60338,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:60340,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:60344,9'
          Dst:             JS_NewCConstructor
        - Src:             'quickjs.c:60344,9'
          Dst:             js_typed_array_base_constructor
        - Src:             'quickjs.c:60350,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:60354,11'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:60355,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:60358,30'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:60359,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:60361,11'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:60363,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:60373,16'
          Dst:             JS_AtomGetStr
        - Src:             'quickjs.c:60376,19'
          Dst:             JS_NewCConstructor
        - Src:             'quickjs.c:60376,19'
          Dst:             js_typed_array_constructor
        - Src:             'quickjs.c:60384,19'
          Dst:             JS_NewCConstructor
        - Src:             'quickjs.c:60384,19'
          Dst:             js_typed_array_constructor
        - Src:             'quickjs.c:60391,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:60393,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:60396,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:60398,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:60401,11'
          Dst:             JS_NewCConstructor
        - Src:             'quickjs.c:60401,11'
          Dst:             js_dataview_constructor
        - Src:             'quickjs.c:60407,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:60409,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:60413,9'
          Dst:             JS_AddIntrinsicAtomics
    - functionName:    JS_AddIntrinsicMapSet
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52592
      functionLinenumberEnd: 52622
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_AtomGetStr
        - JS_FreeValue
        - JS_IsException
        - JS_NewCConstructor
        - JS_NewObjectProtoList
        - js_map_constructor
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:52615,13'
          Dst:             JS_NewObjectProtoList
        - Src:             'quickjs.c:52618,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52599,28'
          Dst:             JS_AtomGetStr
        - Src:             'quickjs.c:52602,16'
          Dst:             JS_NewCConstructor
        - Src:             'quickjs.c:52602,16'
          Dst:             js_map_constructor
        - Src:             'quickjs.c:52608,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:52610,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:52615,13'
          Dst:             JS_NewObjectProtoList
        - Src:             'quickjs.c:52618,13'
          Dst:             JS_IsException
    - functionName:    JS_AddIntrinsicProxy
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50839
      functionLinenumberEnd: 50868
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          79
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - JS_DefinePropertyValueStr
        - JS_FreeValue
        - JS_IsException
        - JS_IsRegisteredClass
        - JS_NewCFunction3
        - JS_SetConstructorBit
        - JS_SetPropertyFunctionList
        - init_class_range
        - js_proxy_constructor
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:50843,10'
          Dst:             JS_IsRegisteredClass
        - Src:             'quickjs.c:50844,13'
          Dst:             init_class_range
        - Src:             'quickjs.c:50852,12'
          Dst:             JS_NewCFunction3
        - Src:             'quickjs.c:50852,12'
          Dst:             js_proxy_constructor
        - Src:             'quickjs.c:50855,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:50857,5'
          Dst:             JS_SetConstructorBit
        - Src:             'quickjs.c:50858,9'
          Dst:             JS_SetPropertyFunctionList
        - Src:             'quickjs.c:50861,9'
          Dst:             JS_DefinePropertyValueStr
        - Src:             'quickjs.c:50866,5'
          Dst:             JS_FreeValue
    - functionName:    JS_AddIntrinsicJSON
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49709
      functionLinenumberEnd: 49711
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_SetPropertyFunctionList
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:49711,12'
          Dst:             JS_SetPropertyFunctionList
    - functionName:    JS_AddIntrinsicRegExp
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48571
      functionLinenumberEnd: 48619
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         22
      ICount:          131
      EdgeCount:       31
      CyclomaticComplexity: 11
      functionsReached:
        - JS_AddIntrinsicRegExpCompiler
        - JS_IsException
        - JS_NewCConstructor
        - JS_NewObjectProtoList
        - add_shape_property
        - get_proto_obj
        - js_new_shape2
        - js_regexp_constructor
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:48574,5'
          Dst:             JS_AddIntrinsicRegExpCompiler
        - Src:             'quickjs.c:48576,11'
          Dst:             JS_NewCConstructor
        - Src:             'quickjs.c:48576,11'
          Dst:             js_regexp_constructor
        - Src:             'quickjs.c:48582,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48587,9'
          Dst:             JS_NewObjectProtoList
        - Src:             'quickjs.c:48590,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:48593,44'
          Dst:             get_proto_obj
        - Src:             'quickjs.c:48593,25'
          Dst:             js_new_shape2
        - Src:             'quickjs.c:48597,9'
          Dst:             add_shape_property
        - Src:             'quickjs.c:48601,51'
          Dst:             get_proto_obj
        - Src:             'quickjs.c:48601,32'
          Dst:             js_new_shape2
        - Src:             'quickjs.c:48605,9'
          Dst:             add_shape_property
        - Src:             'quickjs.c:48608,9'
          Dst:             add_shape_property
        - Src:             'quickjs.c:48611,9'
          Dst:             add_shape_property
        - Src:             'quickjs.c:48614,9'
          Dst:             add_shape_property
    - functionName:    JS_AddIntrinsicStringNormalize
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46221
      functionLinenumberEnd: 46222
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_SetPropertyFunctionList
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:46222,12'
          Dst:             JS_SetPropertyFunctionList
    - functionName:    JS_AddIntrinsicEval
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55479
      functionLinenumberEnd: 55481
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_AddIntrinsicDate
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55460
      functionLinenumberEnd: 55474
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_NewCConstructor
        - js_date_constructor
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:55464,11'
          Dst:             JS_NewCConstructor
        - Src:             'quickjs.c:55464,11'
          Dst:             js_date_constructor
        - Src:             'quickjs.c:55470,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55472,5'
          Dst:             JS_FreeValue
    - functionName:    JS_AddIntrinsicBaseObjects
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55816
      functionLinenumberEnd: 56033
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         64
      ICount:          527
      EdgeCount:       94
      CyclomaticComplexity: 32
      functionsReached:
        - JS_AddIntrinsicBigInt
        - JS_AtomToString
        - JS_DefineProperty
        - JS_DefinePropertyValue
        - JS_DupValue
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_NewCConstructor
        - JS_NewCFunction
        - JS_NewCFunctionData
        - JS_NewObjectProtoList
        - JS_SetConstructor2
        - JS_SetObjectData
        - JS_SetPropertyFunctionList
        - js_boolean_constructor
        - js_function_constructor
        - js_iterator_constructor
        - js_iterator_constructor_getset
        - js_number_constructor
        - js_object_constructor
        - js_object_seal
        - js_random_init
        - js_string_constructor
        - js_symbol_constructor
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:55820,29'
          Dst:             JS_NewCFunction
        - Src:             'quickjs.c:55821,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55824,9'
          Dst:             JS_DefineProperty
        - Src:             'quickjs.c:55829,9'
          Dst:             JS_DefineProperty
        - Src:             'quickjs.c:55834,23'
          Dst:             js_object_seal
        - Src:             'quickjs.c:55834,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:55837,12'
          Dst:             JS_NewCConstructor
        - Src:             'quickjs.c:55837,12'
          Dst:             js_object_constructor
        - Src:             'quickjs.c:55843,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55845,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:55849,12'
          Dst:             JS_NewCConstructor
        - Src:             'quickjs.c:55849,12'
          Dst:             js_function_constructor
        - Src:             'quickjs.c:55855,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55860,12'
          Dst:             JS_NewCConstructor
        - Src:             'quickjs.c:55860,12'
          Dst:             js_iterator_constructor
        - Src:             'quickjs.c:55866,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55872,12'
          Dst:             JS_NewCFunctionData
        - Src:             'quickjs.c:55872,12'
          Dst:             js_iterator_constructor_getset
        - Src:             'quickjs.c:55874,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55875,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:55878,9'
          Dst:             JS_DefineProperty
        - Src:             'quickjs.c:55882,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:55883,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:55886,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:55890,9'
          Dst:             JS_NewObjectProtoList
        - Src:             'quickjs.c:55893,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55896,9'
          Dst:             JS_NewObjectProtoList
        - Src:             'quickjs.c:55899,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55903,9'
          Dst:             JS_NewObjectProtoList
        - Src:             'quickjs.c:55906,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55911,9'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:55912,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55916,9'
          Dst:             JS_NewObjectProtoList
        - Src:             'quickjs.c:55919,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55925,9'
          Dst:             JS_SetPropertyFunctionList
        - Src:             'quickjs.c:55930,12'
          Dst:             JS_NewCConstructor
        - Src:             'quickjs.c:55930,12'
          Dst:             js_number_constructor
        - Src:             'quickjs.c:55936,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55938,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:55939,9'
          Dst:             JS_SetObjectData
        - Src:             'quickjs.c:55943,12'
          Dst:             JS_NewCConstructor
        - Src:             'quickjs.c:55943,12'
          Dst:             js_boolean_constructor
        - Src:             'quickjs.c:55949,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55951,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:55952,9'
          Dst:             JS_SetObjectData
        - Src:             'quickjs.c:55956,12'
          Dst:             JS_NewCConstructor
        - Src:             'quickjs.c:55956,12'
          Dst:             js_string_constructor
        - Src:             'quickjs.c:55962,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55964,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:55965,66'
          Dst:             JS_AtomToString
        - Src:             'quickjs.c:55965,9'
          Dst:             JS_SetObjectData
        - Src:             'quickjs.c:55969,9'
          Dst:             JS_NewObjectProtoList
        - Src:             'quickjs.c:55972,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55976,5'
          Dst:             js_random_init
        - Src:             'quickjs.c:55977,9'
          Dst:             JS_SetPropertyFunctionList
        - Src:             'quickjs.c:55981,9'
          Dst:             JS_SetPropertyFunctionList
        - Src:             'quickjs.c:55985,12'
          Dst:             JS_NewCConstructor
        - Src:             'quickjs.c:55985,12'
          Dst:             js_symbol_constructor
        - Src:             'quickjs.c:55991,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55993,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:55997,9'
          Dst:             JS_NewObjectProtoList
        - Src:             'quickjs.c:56000,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:56004,12'
          Dst:             JS_NewCConstructor
        - Src:             'quickjs.c:56004,12'
          Dst:             js_function_constructor
        - Src:             'quickjs.c:56011,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:56013,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:56014,9'
          Dst:             JS_SetConstructor2
        - Src:             'quickjs.c:56020,21'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:56021,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:56025,32'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:56024,9'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs.c:56030,9'
          Dst:             JS_AddIntrinsicBigInt
    - functionName:    fabs
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    floor
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ceil
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sqrt
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    acos
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    asin
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    atan
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    atan2
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        2
      argTypes:
        - double
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cos
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    exp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    log
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sin
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tan
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    trunc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cosh
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sinh
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tanh
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    acosh
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    asinh
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    atanh
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    expm1
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    log1p
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    log2
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    log10
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cbrt
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_NewContext
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2215
      functionLinenumberEnd: 2237
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         27
      ICount:          106
      EdgeCount:       38
      CyclomaticComplexity: 13
      functionsReached:
        - JS_AddIntrinsicBaseObjects
        - JS_AddIntrinsicDate
        - JS_AddIntrinsicEval
        - JS_AddIntrinsicJSON
        - JS_AddIntrinsicMapSet
        - JS_AddIntrinsicPromise
        - JS_AddIntrinsicProxy
        - JS_AddIntrinsicRegExp
        - JS_AddIntrinsicStringNormalize
        - JS_AddIntrinsicTypedArrays
        - JS_AddIntrinsicWeakRef
        - JS_FreeContext
        - JS_NewContextRaw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:2218,11'
          Dst:             JS_NewContextRaw
        - Src:             'quickjs.c:2222,9'
          Dst:             JS_AddIntrinsicBaseObjects
        - Src:             'quickjs.c:2223,9'
          Dst:             JS_AddIntrinsicDate
        - Src:             'quickjs.c:2224,9'
          Dst:             JS_AddIntrinsicEval
        - Src:             'quickjs.c:2225,9'
          Dst:             JS_AddIntrinsicStringNormalize
        - Src:             'quickjs.c:2226,9'
          Dst:             JS_AddIntrinsicRegExp
        - Src:             'quickjs.c:2227,9'
          Dst:             JS_AddIntrinsicJSON
        - Src:             'quickjs.c:2228,9'
          Dst:             JS_AddIntrinsicProxy
        - Src:             'quickjs.c:2229,9'
          Dst:             JS_AddIntrinsicMapSet
        - Src:             'quickjs.c:2230,9'
          Dst:             JS_AddIntrinsicTypedArrays
        - Src:             'quickjs.c:2231,9'
          Dst:             JS_AddIntrinsicPromise
        - Src:             'quickjs.c:2232,9'
          Dst:             JS_AddIntrinsicWeakRef
        - Src:             'quickjs.c:2233,9'
          Dst:             JS_FreeContext
    - functionName:    JS_NewContextRaw
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2181
      functionLinenumberEnd: 2212
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          109
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - JS_AddIntrinsicBasicObjects
        - JS_FreeContext
        - add_gc_object
        - init_list_head
        - js_free_rt
        - js_malloc_rt
        - js_mallocz_rt
        - list_add_tail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:2185,11'
          Dst:             js_mallocz_rt
        - Src:             'quickjs.c:2189,5'
          Dst:             add_gc_object
        - Src:             'quickjs.c:2191,24'
          Dst:             js_malloc_rt
        - Src:             'quickjs.c:2194,9'
          Dst:             js_free_rt
        - Src:             'quickjs.c:2198,5'
          Dst:             list_add_tail
        - Src:             'quickjs.c:2205,5'
          Dst:             init_list_head
        - Src:             'quickjs.c:2207,9'
          Dst:             JS_AddIntrinsicBasicObjects
        - Src:             'quickjs.c:2208,9'
          Dst:             JS_FreeContext
    - functionName:    JS_AddIntrinsicBasicObjects
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55684
      functionLinenumberEnd: 55813
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         44
      ICount:          313
      EdgeCount:       63
      CyclomaticComplexity: 21
      functionsReached:
        - JS_AtomGetStr
        - JS_DupValue
        - JS_FreeValue
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_NewCConstructor
        - JS_NewCFunction3
        - JS_NewObjectProtoClassAlloc
        - JS_SetImmutablePrototype
        - add_shape_property
        - get_proto_obj
        - js_array_constructor
        - js_error_constructor
        - js_function_proto
        - js_new_shape2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:55691,9'
          Dst:             JS_NewObjectProtoClassAlloc
        - Src:             'quickjs.c:55693,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55695,5'
          Dst:             JS_SetImmutablePrototype
        - Src:             'quickjs.c:55698,27'
          Dst:             JS_NewCFunction3
        - Src:             'quickjs.c:55698,27'
          Dst:             js_function_proto
        - Src:             'quickjs.c:55702,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55704,52'
          Dst:             JS_DupValue
        - Src:             'quickjs.c:55706,23'
          Dst:             JS_NewObjectProtoClassAlloc
        - Src:             'quickjs.c:55708,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55712,15'
          Dst:             JS_NewObjectProtoClassAlloc
        - Src:             'quickjs.c:55716,27'
          Dst:             JS_NewObjectProtoClassAlloc
        - Src:             'quickjs.c:55718,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55723,11'
          Dst:             JS_NewCConstructor
        - Src:             'quickjs.c:55723,11'
          Dst:             js_error_constructor
        - Src:             'quickjs.c:55729,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55737,28'
          Dst:             JS_AtomGetStr
        - Src:             'quickjs.c:55741,20'
          Dst:             JS_NewCConstructor
        - Src:             'quickjs.c:55741,20'
          Dst:             js_error_constructor
        - Src:             'quickjs.c:55747,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55751,38'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs.c:55752,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:55753,13'
          Dst:             JS_IsException
        - Src:             'quickjs.c:0,0'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:55758,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:55761,11'
          Dst:             JS_NewCConstructor
        - Src:             'quickjs.c:55761,11'
          Dst:             js_array_constructor
        - Src:             'quickjs.c:55767,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:55776,43'
          Dst:             get_proto_obj
        - Src:             'quickjs.c:55776,24'
          Dst:             js_new_shape2
        - Src:             'quickjs.c:55780,9'
          Dst:             add_shape_property
        - Src:             'quickjs.c:55784,47'
          Dst:             get_proto_obj
        - Src:             'quickjs.c:55784,28'
          Dst:             js_new_shape2
        - Src:             'quickjs.c:55788,9'
          Dst:             add_shape_property
        - Src:             'quickjs.c:55791,9'
          Dst:             add_shape_property
        - Src:             'quickjs.c:55794,9'
          Dst:             add_shape_property
        - Src:             'quickjs.c:55798,54'
          Dst:             get_proto_obj
        - Src:             'quickjs.c:55798,35'
          Dst:             js_new_shape2
        - Src:             'quickjs.c:55802,9'
          Dst:             add_shape_property
        - Src:             'quickjs.c:55805,9'
          Dst:             add_shape_property
        - Src:             'quickjs.c:55808,9'
          Dst:             add_shape_property
    - functionName:    JS_SetRuntimeInfo
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1987
      functionLinenumberEnd: 1990
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          16
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_ExecutePendingJob
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1891
      functionLinenumberEnd: 1924
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          109
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - JS_FreeContext
        - JS_FreeValue
        - JS_IsException
        - js_free
        - list_del
        - list_empty
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1897,9'
          Dst:             list_empty
        - Src:             'quickjs.c:1905,5'
          Dst:             list_del
        - Src:             'quickjs.c:1909,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:1910,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:1914,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:1915,5'
          Dst:             js_free
        - Src:             'quickjs.c:1922,5'
          Dst:             JS_FreeContext
    - functionName:    JS_IsJobPending
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1881
      functionLinenumberEnd: 1882
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - list_empty
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1882,13'
          Dst:             list_empty
    - functionName:    JS_GetStripInfo
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1846
      functionLinenumberEnd: 1847
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_SetStripInfo
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1841
      functionLinenumberEnd: 1843
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_SetSharedArrayBufferFunctions
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1836
      functionLinenumberEnd: 1838
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_SetCanBlock
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1830
      functionLinenumberEnd: 1832
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_SetInterruptHandler
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1824
      functionLinenumberEnd: 1827
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_SetGCThreshold
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1815
      functionLinenumberEnd: 1817
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_SetMemoryLimit
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1809
      functionLinenumberEnd: 1811
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_NewRuntime
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1804
      functionLinenumberEnd: 1805
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_NewRuntime2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1805,12'
          Dst:             JS_NewRuntime2
    - functionName:    JS_NewRuntime2
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1652
      functionLinenumberEnd: 1711
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          118
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - JS_FreeRuntime
        - JS_InitAtoms
        - JS_UpdateStackTop
        - init_class_range
        - init_list_head
        - init_shape_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1672,5'
          Dst:             init_list_head
        - Src:             'quickjs.c:1673,5'
          Dst:             init_list_head
        - Src:             'quickjs.c:1674,5'
          Dst:             init_list_head
        - Src:             'quickjs.c:1676,5'
          Dst:             init_list_head
        - Src:             'quickjs.c:1681,5'
          Dst:             init_list_head
        - Src:             'quickjs.c:1683,9'
          Dst:             JS_InitAtoms
        - Src:             'quickjs.c:1687,9'
          Dst:             init_class_range
        - Src:             'quickjs.c:1699,9'
          Dst:             init_shape_hash
        - Src:             'quickjs.c:1703,5'
          Dst:             JS_UpdateStackTop
        - Src:             'quickjs.c:1709,5'
          Dst:             JS_FreeRuntime
    - functionName:    js_malloc_usable_size_unknown
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1380
      functionLinenumberEnd: 1381
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_InitAtoms
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2666
      functionLinenumberEnd: 2692
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          77
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - JS_ResizeAtomHash
        - __JS_NewAtomInit
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:2675,9'
          Dst:             JS_ResizeAtomHash
        - Src:             'quickjs.c:2686,15'
          Dst:             strlen
        - Src:             'quickjs.c:2687,13'
          Dst:             __JS_NewAtomInit
    - functionName:    js_call_c_function
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17192
      functionLinenumberEnd: 17316
      functionDepth:   0
      returnType:      'N/A'
      argCount:        8
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         81
      ICount:          491
      EdgeCount:       101
      CyclomaticComplexity: 22
      functionsReached:
        - JS_IsException
        - JS_ThrowStackOverflow
        - JS_ThrowTypeError
        - JS_ToFloat64
        - __JS_NewFloat64
        - abort
        - js_check_stack_overflow
        - js_create_iterator_result
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs.c:17231,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs.c:17207,9'
          Dst:             js_check_stack_overflow
        - Src:             'quickjs.c:17208,16'
          Dst:             JS_ThrowStackOverflow
        - Src:             'quickjs.c:17237,27'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs.c:17278,17'
          Dst:             JS_ToFloat64
        - Src:             'quickjs.c:17282,23'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:17289,17'
          Dst:             JS_ToFloat64
        - Src:             'quickjs.c:17293,17'
          Dst:             JS_ToFloat64
        - Src:             'quickjs.c:17297,23'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs.c:17305,18'
          Dst:             JS_IsException
        - Src:             'quickjs.c:17306,27'
          Dst:             js_create_iterator_result
        - Src:             'quickjs.c:17311,9'
          Dst:             abort
    - functionName:    js_c_function_data_call
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5627
      functionLinenumberEnd: 5644
      functionDepth:   0
      returnType:      'N/A'
      argCount:        8
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          69
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - JS_GetOpaque
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:5628,32'
          Dst:             JS_GetOpaque
    - functionName:    js_call_bound_function
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17321
      functionLinenumberEnd: 17349
      functionDepth:   0
      returnType:      'N/A'
      argCount:        8
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          195
      EdgeCount:       44
      CyclomaticComplexity: 13
      functionsReached:
        - JS_Call
        - JS_CallConstructor2
        - JS_ThrowStackOverflow
        - js_check_stack_overflow
        - js_same_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:17330,9'
          Dst:             js_check_stack_overflow
        - Src:             'quickjs.c:17331,16'
          Dst:             JS_ThrowStackOverflow
        - Src:             'quickjs.c:17341,13'
          Dst:             js_same_value
        - Src:             'quickjs.c:17343,16'
          Dst:             JS_CallConstructor2
        - Src:             'quickjs.c:17346,16'
          Dst:             JS_Call
    - functionName:    js_generator_function_call
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20587
      functionLinenumberEnd: 20616
      functionDepth:   0
      returnType:      'N/A'
      argCount:        8
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          70
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_SetOpaque
        - async_func_init
        - async_func_resume
        - free_generator_stack_rt
        - js_create_from_ctor
        - js_free
        - js_mallocz
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:20591,9'
          Dst:             js_mallocz
        - Src:             'quickjs.c:20595,21'
          Dst:             async_func_init
        - Src:             'quickjs.c:20602,16'
          Dst:             async_func_resume
        - Src:             'quickjs.c:20603,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:20605,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs.c:20607,11'
          Dst:             js_create_from_ctor
        - Src:             'quickjs.c:20608,9'
          Dst:             JS_IsException
        - Src:             'quickjs.c:20610,5'
          Dst:             JS_SetOpaque
        - Src:             'quickjs.c:20613,5'
          Dst:             free_generator_stack_rt
        - Src:             'quickjs.c:20614,5'
          Dst:             js_free
    - functionName:    init_shape_hash
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4735
      functionLinenumberEnd: 4744
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - js_mallocz_rt
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:4739,22'
          Dst:             js_mallocz_rt
    - functionName:    JS_UpdateStackTop
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2444
      functionLinenumberEnd: 2447
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_get_stack_pointer
        - update_stack_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:2445,21'
          Dst:             js_get_stack_pointer
        - Src:             'quickjs.c:2446,5'
          Dst:             update_stack_limit
    - functionName:    JS_FreeRuntime
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1993
      functionLinenumberEnd: 2178
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         37
      ICount:          204
      EdgeCount:       47
      CyclomaticComplexity: 12
      functionsReached:
        - JS_FreeAtomRT
        - JS_FreeContext
        - JS_FreeValueRT
        - JS_RunGCInternal
        - __assert_fail
        - atom_is_free
        - init_list_head
        - js_free_rt
        - list_empty
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs.c:1997,5'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:2002,13'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs.c:2003,9'
          Dst:             JS_FreeContext
        - Src:             'quickjs.c:2004,9'
          Dst:             js_free_rt
        - Src:             'quickjs.c:2006,5'
          Dst:             init_list_head
        - Src:             'quickjs.c:2010,5'
          Dst:             JS_RunGCInternal
        - Src:             'quickjs.c:2051,5'
          Dst:             list_empty
        - Src:             'quickjs.c:2051,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:2052,5'
          Dst:             list_empty
        - Src:             'quickjs.c:2052,5'
          Dst:             __assert_fail
        - Src:             'quickjs.c:2058,13'
          Dst:             JS_FreeAtomRT
        - Src:             'quickjs.c:2061,5'
          Dst:             js_free_rt
        - Src:             'quickjs.c:2124,14'
          Dst:             atom_is_free
        - Src:             'quickjs.c:2128,13'
          Dst:             js_free_rt
        - Src:             'quickjs.c:2131,5'
          Dst:             js_free_rt
        - Src:             'quickjs.c:2132,5'
          Dst:             js_free_rt
        - Src:             'quickjs.c:2133,5'
          Dst:             js_free_rt
    - functionName:    JS_SetRuntimeOpaque
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1719
      functionLinenumberEnd: 1721
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_GetRuntimeOpaque
      functionSourceFile: '/src/quickjs/quickjs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1714
      functionLinenumberEnd: 1715
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mp_add_ui
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          34
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mp_shr
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          89
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mpb_get_bit
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 301
      functionLinenumberEnd: 310
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          25
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    udiv1norm
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          33
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mp_shl
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          97
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - __assert_fail
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'dtoa.c:176,5'
          Dst:             __assert_fail
    - functionName:    udiv1norm_init
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mp_div1norm
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          59
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - mp_shl
        - udiv1norm
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'dtoa.c:192,28'
          Dst:             mp_shl
        - Src:             'dtoa.c:195,19'
          Dst:             udiv1norm
    - functionName:    pow_ui_inv
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 291
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          55
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - clz32
        - pow_ui
        - udiv1norm_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'dtoa.c:278,17'
          Dst:             clz32
        - Src:             'dtoa.c:284,13'
          Dst:             pow_ui
        - Src:             'dtoa.c:285,17'
          Dst:             clz32
        - Src:             'dtoa.c:287,17'
          Dst:             udiv1norm_init
    - functionName:    clz32
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pow_ui
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         40
      ICount:          182
      EdgeCount:       54
      CyclomaticComplexity: 16
      functionsReached:
        - clz32
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'dtoa.c:262,19'
          Dst:             clz32
    - functionName:    mpb_floor_log2
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 449
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - clz32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'dtoa.c:455,41'
          Dst:             clz32
    - functionName:    mp_mul1
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          85
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    limb_to_a
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 562
      functionLinenumberEnd: 588
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          61
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - u32toa_len
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'dtoa.c:568,9'
          Dst:             u32toa_len
    - functionName:    u32toa_len
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 533
      functionLinenumberEnd: 540
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          69
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mpb_renorm
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 218
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          38
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mp_div1
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    uint64_as_float64
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 392
      functionLinenumberEnd: 398
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    round_to_d
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 971
      functionLinenumberEnd: 1000
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          70
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - mpb_floor_log2
        - mpb_get_u64
        - mpb_shr_round
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'dtoa.c:981,13'
          Dst:             mpb_floor_log2
        - Src:             'dtoa.c:990,9'
          Dst:             mpb_shr_round
        - Src:             'dtoa.c:991,13'
          Dst:             mpb_get_u64
    - functionName:    mpb_shr_round
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 314
      functionLinenumberEnd: 398
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         103
      ICount:          571
      EdgeCount:       142
      CyclomaticComplexity: 41
      functionsReached:
        - min_int
        - mp_add_ui
        - mp_shl
        - mp_shr
        - mpb_get_bit
        - mpb_renorm
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'dtoa.c:324,30'
          Dst:             mp_shl
        - Src:             'dtoa.c:326,13'
          Dst:             mpb_renorm
        - Src:             'dtoa.c:346,20'
          Dst:             mpb_get_bit
        - Src:             'dtoa.c:0,0'
          Dst:             min_int
        - Src:             'dtoa.c:367,31'
          Dst:             mpb_get_bit
        - Src:             'dtoa.c:387,17'
          Dst:             mp_shr
        - Src:             'dtoa.c:388,17'
          Dst:             mpb_renorm
        - Src:             'dtoa.c:392,21'
          Dst:             mp_add_ui
    - functionName:    mpb_get_u64
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 435
      functionLinenumberEnd: 445
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          22
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    min_int
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          16
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mpb_mul1_base
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1334
      functionLinenumberEnd: 1351
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          181
      EdgeCount:       47
      CyclomaticComplexity: 14
      functionsReached:
        - mp_mul1
        - mpb_renorm
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'dtoa.c:1345,30'
          Dst:             mp_mul1
        - Src:             'dtoa.c:1349,9'
          Dst:             mpb_renorm
    - functionName:    to_digit
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1321
      functionLinenumberEnd: 1330
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          54
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_atod
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1356
      functionLinenumberEnd: 1620
      functionDepth:   0
      returnType:      double
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         240
      ICount:          1033
      EdgeCount:       334
      CyclomaticComplexity: 96
      functionsReached:
        - __assert_fail
        - ctz32
        - dtoa_malloc
        - mpb_mul1_base
        - mul_pow_round_to_d
        - pow_ui
        - round_to_d
        - strstart
        - to_digit
        - uint64_as_float64
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'dtoa.c:1367,12'
          Dst:             dtoa_malloc
        - Src:             'dtoa.c:1368,5'
          Dst:             __assert_fail
        - Src:             'dtoa.c:1412,13'
          Dst:             to_digit
        - Src:             'dtoa.c:1416,44'
          Dst:             strstart
        - Src:             'dtoa.c:1429,19'
          Dst:             ctz32
        - Src:             'dtoa.c:1444,42'
          Dst:             to_digit
        - Src:             'dtoa.c:1464,42'
          Dst:             to_digit
        - Src:             'dtoa.c:1473,41'
          Dst:             to_digit
        - Src:             'dtoa.c:1475,13'
          Dst:             to_digit
        - Src:             'dtoa.c:1485,17'
          Dst:             mpb_mul1_base
        - Src:             'dtoa.c:1495,29'
          Dst:             pow_ui
        - Src:             'dtoa.c:1495,9'
          Dst:             mpb_mul1_base
        - Src:             'dtoa.c:1533,13'
          Dst:             to_digit
        - Src:             'dtoa.c:1539,30'
          Dst:             to_digit
        - Src:             'dtoa.c:1541,17'
          Dst:             to_digit
        - Src:             'dtoa.c:1539,30'
          Dst:             to_digit
        - Src:             'dtoa.c:1541,17'
          Dst:             to_digit
        - Src:             'dtoa.c:1581,17'
          Dst:             round_to_d
        - Src:             'dtoa.c:1589,17'
          Dst:             mul_pow_round_to_d
        - Src:             'dtoa.c:1611,12'
          Dst:             uint64_as_float64
    - functionName:    dtoa_malloc
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1095
      functionLinenumberEnd: 1099
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ctz32
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mul_pow_round_to_d
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1008
      functionLinenumberEnd: 1012
      functionDepth:   0
      returnType:      size_t
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mul_pow
        - round_to_d
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'dtoa.c:1011,16'
          Dst:             mul_pow
        - Src:             'dtoa.c:1012,12'
          Dst:             round_to_d
    - functionName:    mul_pow
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 894
      functionLinenumberEnd: 955
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          167
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - max_int
        - min_int
        - mp_div1norm
        - mp_mul1
        - mpb_floor_log2
        - mpb_renorm
        - mpb_shr_round
        - pow_ui
        - pow_ui_inv
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'dtoa.c:906,21'
          Dst:             min_int
        - Src:             'dtoa.c:908,25'
          Dst:             pow_ui
        - Src:             'dtoa.c:911,21'
          Dst:             mp_mul1
        - Src:             'dtoa.c:926,42'
          Dst:             mpb_floor_log2
        - Src:             'dtoa.c:0,0'
          Dst:             max_int
        - Src:             'dtoa.c:933,13'
          Dst:             mpb_shr_round
        - Src:             'dtoa.c:941,21'
          Dst:             min_int
        - Src:             'dtoa.c:943,25'
          Dst:             pow_ui_inv
        - Src:             'dtoa.c:946,21'
          Dst:             mp_div1norm
        - Src:             'dtoa.c:948,17'
          Dst:             mpb_renorm
    - functionName:    max_int
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          16
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mpb_cmp
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 402
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          63
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    output_digits
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 850
      functionLinenumberEnd: 888
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          126
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - clz32
        - limb_to_a
        - min_int
        - mp_div1
        - mpb_renorm
        - mpb_shr_round
        - u64toa_bin_len
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'dtoa.c:856,27'
          Dst:             clz32
        - Src:             'dtoa.c:863,17'
          Dst:             min_int
        - Src:             'dtoa.c:865,13'
          Dst:             u64toa_bin_len
        - Src:             'dtoa.c:868,13'
          Dst:             mpb_shr_round
        - Src:             'dtoa.c:863,17'
          Dst:             min_int
        - Src:             'dtoa.c:865,13'
          Dst:             u64toa_bin_len
        - Src:             'dtoa.c:873,17'
          Dst:             min_int
        - Src:             'dtoa.c:875,17'
          Dst:             mp_div1
        - Src:             'dtoa.c:876,13'
          Dst:             mpb_renorm
        - Src:             'dtoa.c:877,13'
          Dst:             limb_to_a
    - functionName:    u64toa_bin_len
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 544
      functionLinenumberEnd: 558
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          110
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mpb_set_u64
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 420
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          19
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mul_pow_round
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 961
      functionLinenumberEnd: 967
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - int
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mpb_set_u64
        - mpb_shr_round
        - mul_pow
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'dtoa.c:964,5'
          Dst:             mpb_set_u64
        - Src:             'dtoa.c:965,16'
          Dst:             mul_pow
        - Src:             'dtoa.c:966,5'
          Dst:             mpb_shr_round
    - functionName:    js_dtoa
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1110
      functionLinenumberEnd: 1318
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - double
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         114
      ICount:          559
      EdgeCount:       155
      CyclomaticComplexity: 43
      functionsReached:
        - __assert_fail
        - clz64
        - ctz32
        - dtoa_malloc
        - float64_as_uint64
        - max_int
        - min_int
        - mpb_cmp
        - mpb_get_u64
        - mpb_set_u64
        - mpb_shr_round
        - mul_log2_radix
        - mul_pow
        - mul_pow_round
        - mul_pow_round_to_d
        - output_digits
        - pow_ui
        - u32toa
        - u64toa_radix
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'dtoa.c:1117,12'
          Dst:             dtoa_malloc
        - Src:             'dtoa.c:1118,16'
          Dst:             dtoa_malloc
        - Src:             'dtoa.c:1119,5'
          Dst:             __assert_fail
        - Src:             'dtoa.c:1121,19'
          Dst:             ctz32
        - Src:             'dtoa.c:1123,9'
          Dst:             float64_as_uint64
        - Src:             'dtoa.c:1156,13'
          Dst:             clz64
        - Src:             'dtoa.c:1175,14'
          Dst:             u64toa_radix
        - Src:             'dtoa.c:1182,13'
          Dst:             mul_log2_radix
        - Src:             'dtoa.c:1197,25'
          Dst:             pow_ui
        - Src:             'dtoa.c:1202,17'
          Dst:             mul_pow_round
        - Src:             'dtoa.c:1203,24'
          Dst:             mpb_get_u64
        - Src:             'dtoa.c:1217,13'
          Dst:             mpb_set_u64
        - Src:             'dtoa.c:1218,18'
          Dst:             mul_pow_round_to_d
        - Src:             'dtoa.c:1236,9'
          Dst:             mpb_set_u64
        - Src:             'dtoa.c:1182,13'
          Dst:             mul_log2_radix
        - Src:             'dtoa.c:1245,9'
          Dst:             __assert_fail
        - Src:             'dtoa.c:1248,9'
          Dst:             mul_pow_round
        - Src:             'dtoa.c:1252,45'
          Dst:             max_int
        - Src:             'dtoa.c:1252,15'
          Dst:             output_digits
        - Src:             'dtoa.c:1262,9'
          Dst:             __assert_fail
        - Src:             'dtoa.c:1267,21'
          Dst:             mul_pow
        - Src:             'dtoa.c:1268,9'
          Dst:             mpb_shr_round
        - Src:             'dtoa.c:1272,13'
          Dst:             mul_pow_round
        - Src:             'dtoa.c:1273,17'
          Dst:             mpb_cmp
        - Src:             'dtoa.c:1285,14'
          Dst:             output_digits
        - Src:             'dtoa.c:1301,14'
          Dst:             u32toa
        - Src:             'dtoa.c:1307,14'
          Dst:             output_digits
        - Src:             'dtoa.c:1309,47'
          Dst:             min_int
        - Src:             'dtoa.c:1309,14'
          Dst:             output_digits
    - functionName:    float64_as_uint64
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 382
      functionLinenumberEnd: 388
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    clz64
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    u64toa_radix
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 659
      functionLinenumberEnd: 689
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          89
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - clz32
        - clz64
        - u64toa
        - u64toa_bin_len
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'dtoa.c:662,16'
          Dst:             u64toa
        - Src:             'dtoa.c:664,27'
          Dst:             clz32
        - Src:             'dtoa.c:668,23'
          Dst:             clz64
        - Src:             'dtoa.c:669,9'
          Dst:             u64toa_bin_len
    - functionName:    mul_log2_radix
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 488
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - clz32
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'dtoa.c:480,27'
          Dst:             clz32
    - functionName:    u32toa
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 591
      functionLinenumberEnd: 603
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    u64toa
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 617
      functionLinenumberEnd: 645
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          67
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - u32toa
        - u32toa_len
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'dtoa.c:619,16'
          Dst:             u32toa
        - Src:             'dtoa.c:636,13'
          Dst:             u32toa_len
        - Src:             'dtoa.c:639,18'
          Dst:             u32toa
        - Src:             'dtoa.c:641,9'
          Dst:             u32toa_len
    - functionName:    js_dtoa_max_len
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1035
      functionLinenumberEnd: 1081
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - double
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          92
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - float64_as_uint64
        - max_int
        - mul_log2_radix
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'dtoa.c:1048,17'
          Dst:             float64_as_uint64
        - Src:             'dtoa.c:1056,31'
          Dst:             mul_log2_radix
        - Src:             'dtoa.c:1063,13'
          Dst:             float64_as_uint64
        - Src:             'dtoa.c:1075,25'
          Dst:             mul_log2_radix
        - Src:             'dtoa.c:1081,12'
          Dst:             max_int
    - functionName:    i64toa_radix
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 692
      functionLinenumberEnd: 699
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - u64toa_radix
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'dtoa.c:694,16'
          Dst:             u64toa_radix
        - Src:             'dtoa.c:697,16'
          Dst:             u64toa_radix
    - functionName:    i64toa
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 648
      functionLinenumberEnd: 655
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - u64toa
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'dtoa.c:650,16'
          Dst:             u64toa
        - Src:             'dtoa.c:653,16'
          Dst:             u64toa
    - functionName:    i32toa
      functionSourceFile: '/src/quickjs/dtoa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 606
      functionLinenumberEnd: 613
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - u32toa
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'dtoa.c:608,16'
          Dst:             u32toa
        - Src:             'dtoa.c:611,16'
          Dst:             u32toa
    - functionName:    lre_is_space_byte
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lre_is_word_byte
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lre_is_space
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 162
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          26
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - lre_is_space_byte
        - lre_is_space_non_ascii
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './libunicode.h:164,16'
          Dst:             lre_is_space_byte
        - Src:             './libunicode.h:166,16'
          Dst:             lre_is_space_non_ascii
    - functionName:    is_line_terminator
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2617
      functionLinenumberEnd: 2618
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          33
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    stack_realloc
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2751
      functionLinenumberEnd: 2771
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          69
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - lre_realloc
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:2758,21'
          Dst:             lre_realloc
        - Src:             'libregexp.c:2764,21'
          Dst:             lre_realloc
    - functionName:    lre_poll_timeout
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2741
      functionLinenumberEnd: 2748
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          39
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - lre_check_timeout
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:2744,13'
          Dst:             lre_check_timeout
    - functionName:    re_emit_op_u16
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 668
      functionLinenumberEnd: 671
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_put_u16
        - dbuf_putc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:669,5'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:670,5'
          Dst:             dbuf_put_u16
    - functionName:    dbuf_putc
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 284
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __dbuf_putc
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             './cutils.h:279,16'
          Dst:             __dbuf_putc
    - functionName:    dbuf_put_u16
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 287
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __dbuf_put_u16
        - put_u16
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './cutils.h:289,16'
          Dst:             __dbuf_put_u16
        - Src:             './cutils.h:291,9'
          Dst:             put_u16
    - functionName:    put_u16
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    re_string_cmp_len
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1262
      functionLinenumberEnd: 1265
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    re_emit_range
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1226
      functionLinenumberEnd: 1259
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          145
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - dbuf_put_u16
        - dbuf_put_u32
        - re_emit_op_u16
        - re_emit_op_u32
        - re_parse_error
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:1232,16'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1234,9'
          Dst:             re_emit_op_u32
        - Src:             'libregexp.c:1242,13'
          Dst:             re_emit_op_u16
        - Src:             'libregexp.c:1244,17'
          Dst:             dbuf_put_u16
        - Src:             'libregexp.c:1248,17'
          Dst:             dbuf_put_u16
        - Src:             'libregexp.c:1251,13'
          Dst:             re_emit_op_u16
        - Src:             'libregexp.c:1253,17'
          Dst:             dbuf_put_u32
        - Src:             'libregexp.c:1254,17'
          Dst:             dbuf_put_u32
    - functionName:    re_parse_error
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 674
      functionLinenumberEnd: 680
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vsnprintf
      functionUses:    35
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:677,5'
          Dst:             vsnprintf
    - functionName:    re_emit_op_u32
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 623
      functionLinenumberEnd: 628
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_put_u32
        - dbuf_putc
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:625,5'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:627,5'
          Dst:             dbuf_put_u32
    - functionName:    dbuf_put_u32
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 298
      functionLinenumberEnd: 306
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __dbuf_put_u32
        - put_u32
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             './cutils.h:300,16'
          Dst:             __dbuf_put_u32
        - Src:             './cutils.h:302,9'
          Dst:             put_u32
    - functionName:    put_u32
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    re_string_hash
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 151
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          90
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    re_string_find
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - re_string_find2
        - re_string_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:287,10'
          Dst:             re_string_hash
        - Src:             'libregexp.c:288,12'
          Dst:             re_string_find2
    - functionName:    re_string_find2
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          217
      EdgeCount:       54
      CyclomaticComplexity: 16
      functionsReached:
        - lre_realloc
        - max_int
        - memcmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:236,18'
          Dst:             memcmp
        - Src:             'libregexp.c:249,25'
          Dst:             max_int
        - Src:             'libregexp.c:251,26'
          Dst:             lre_realloc
        - Src:             'libregexp.c:264,9'
          Dst:             lre_realloc
        - Src:             'libregexp.c:271,9'
          Dst:             lre_realloc
    - functionName:    max_int
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          16
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    re_string_add
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          33
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - cr_union_interval
        - re_string_find
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:295,16'
          Dst:             cr_union_interval
        - Src:             'libregexp.c:297,9'
          Dst:             re_string_find
    - functionName:    cr_union_interval
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cr_op1
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './libunicode.h:91,12'
          Dst:             cr_op1
    - functionName:    re_string_list_canonicalize
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 353
      functionLinenumberEnd: 388
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          125
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - cr_regexp_canonicalize
        - lre_canonicalize
        - re_string_add
        - re_string_list_free
        - re_string_list_init
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:354,9'
          Dst:             cr_regexp_canonicalize
        - Src:             'libregexp.c:362,9'
          Dst:             re_string_list_init
        - Src:             'libregexp.c:377,33'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:379,21'
          Dst:             re_string_add
        - Src:             'libregexp.c:0,0'
          Dst:             re_string_list_free
    - functionName:    re_string_list_init
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cr_init
        - lre_realloc
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:162,5'
          Dst:             cr_init
        - Src:             'libregexp.c:162,5'
          Dst:             lre_realloc
    - functionName:    re_string_list_free
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          69
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - cr_free
        - lre_realloc
      functionUses:    21
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:176,13'
          Dst:             lre_realloc
        - Src:             'libregexp.c:179,5'
          Dst:             lre_realloc
        - Src:             'libregexp.c:181,5'
          Dst:             cr_free
    - functionName:    seq_prop_cb
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 864
      functionLinenumberEnd: 867
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - re_string_add
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:866,5'
          Dst:             re_string_add
    - functionName:    is_unicode_char
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 855
      functionLinenumberEnd: 859
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          55
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cr_add_point
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - cr_realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './libunicode.h:64,13'
          Dst:             cr_realloc
    - functionName:    parse_class_string_disjunction
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 995
      functionLinenumberEnd: 1039
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          123
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - dbuf_free
        - dbuf_init2
        - dbuf_put_u32
        - get_class_atom
        - lre_realloc
        - re_parse_error
        - re_parse_out_of_memory
        - re_string_add
        - re_string_list_canonicalize
        - re_string_list_free
        - re_string_list_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:1002,16'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1004,5'
          Dst:             dbuf_init2
        - Src:             'libregexp.c:1004,5'
          Dst:             lre_realloc
        - Src:             'libregexp.c:1005,5'
          Dst:             re_string_list_init
        - Src:             'libregexp.c:1011,17'
          Dst:             get_class_atom
        - Src:             'libregexp.c:1014,17'
          Dst:             dbuf_put_u32
        - Src:             'libregexp.c:1019,13'
          Dst:             re_string_add
        - Src:             'libregexp.c:1028,13'
          Dst:             re_string_list_canonicalize
        - Src:             'libregexp.c:1032,5'
          Dst:             dbuf_free
        - Src:             'libregexp.c:0,0'
          Dst:             re_parse_out_of_memory
        - Src:             'libregexp.c:1036,5'
          Dst:             dbuf_free
        - Src:             'libregexp.c:1037,5'
          Dst:             re_string_list_free
    - functionName:    get_class_atom
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1046
      functionLinenumberEnd: 1223
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         137
      ICount:          567
      EdgeCount:       166
      CyclomaticComplexity: 31
      functionsReached:
        - cr_init_char_range
        - lre_parse_escape
        - parse_class_string_disjunction
        - parse_unicode_property
        - re_parse_error
        - unicode_from_utf8
      functionUses:    5
      BranchProfiles:
        - Branch String:   'libregexp.c:1054,5'
          Branch Sides:    []
        - Branch String:   'libregexp.c:1060,9'
          Branch Sides:    []
      Callsites:
        - Src:             'libregexp.c:1081,17'
          Dst:             cr_init_char_range
        - Src:             'libregexp.c:1126,21'
          Dst:             parse_unicode_property
        - Src:             'libregexp.c:1135,21'
          Dst:             parse_class_string_disjunction
        - Src:             'libregexp.c:1144,19'
          Dst:             lre_parse_escape
        - Src:             'libregexp.c:1150,28'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1162,20'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1188,20'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1203,20'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1211,17'
          Dst:             unicode_from_utf8
        - Src:             'libregexp.c:1214,24'
          Dst:             re_parse_error
    - functionName:    re_parse_out_of_memory
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 683
      functionLinenumberEnd: 684
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - re_parse_error
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:684,12'
          Dst:             re_parse_error
    - functionName:    cr_init_char_range
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 439
      functionLinenumberEnd: 460
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          74
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - cr_add_point
        - cr_invert
        - re_string_list_free
        - re_string_list_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:447,5'
          Dst:             re_string_list_init
        - Src:             'libregexp.c:449,13'
          Dst:             cr_add_point
        - Src:             'libregexp.c:453,13'
          Dst:             cr_invert
        - Src:             'libregexp.c:458,5'
          Dst:             re_string_list_free
    - functionName:    parse_unicode_property
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 872
      functionLinenumberEnd: 987
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         88
      ICount:          402
      EdgeCount:       124
      CyclomaticComplexity: 38
      functionsReached:
        - cr_free
        - cr_init
        - cr_invert
        - is_unicode_char
        - lre_realloc
        - re_parse_error
        - re_parse_out_of_memory
        - re_string_list_canonicalize
        - re_string_list_free
        - re_string_list_init
        - seq_prop_cb
        - strcmp
        - unicode_general_category
        - unicode_prop
        - unicode_script
        - unicode_sequence_prop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:884,12'
          Dst:             is_unicode_char
        - Src:             'libregexp.c:881,16'
          Dst:             re_parse_error
        - Src:             'libregexp.c:884,12'
          Dst:             is_unicode_char
        - Src:             'libregexp.c:893,16'
          Dst:             is_unicode_char
        - Src:             'libregexp.c:895,24'
          Dst:             re_parse_error
        - Src:             'libregexp.c:893,16'
          Dst:             is_unicode_char
        - Src:             'libregexp.c:901,16'
          Dst:             re_parse_error
        - Src:             'libregexp.c:905,10'
          Dst:             strcmp
        - Src:             'libregexp.c:905,37'
          Dst:             strcmp
        - Src:             'libregexp.c:908,17'
          Dst:             strcmp
        - Src:             'libregexp.c:908,55'
          Dst:             strcmp
        - Src:             'libregexp.c:911,9'
          Dst:             re_string_list_init
        - Src:             'libregexp.c:912,15'
          Dst:             unicode_script
        - Src:             'libregexp.c:914,13'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:916,24'
          Dst:             re_parse_error
        - Src:             'libregexp.c:920,17'
          Dst:             strcmp
        - Src:             'libregexp.c:920,54'
          Dst:             strcmp
        - Src:             'libregexp.c:921,9'
          Dst:             re_string_list_init
        - Src:             'libregexp.c:922,15'
          Dst:             unicode_general_category
        - Src:             'libregexp.c:924,13'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:926,24'
          Dst:             re_parse_error
        - Src:             'libregexp.c:931,9'
          Dst:             re_string_list_init
        - Src:             'libregexp.c:932,15'
          Dst:             unicode_general_category
        - Src:             'libregexp.c:934,13'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:938,19'
          Dst:             unicode_prop
        - Src:             'libregexp.c:940,17'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:946,13'
          Dst:             cr_init
        - Src:             'libregexp.c:946,13'
          Dst:             lre_realloc
        - Src:             'libregexp.c:947,19'
          Dst:             unicode_sequence_prop
        - Src:             'libregexp.c:947,19'
          Dst:             seq_prop_cb
        - Src:             'libregexp.c:948,13'
          Dst:             cr_free
        - Src:             'libregexp.c:950,17'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:958,16'
          Dst:             re_parse_error
        - Src:             'libregexp.c:966,13'
          Dst:             re_string_list_canonicalize
        - Src:             'libregexp.c:967,13'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:972,13'
          Dst:             cr_invert
        - Src:             'libregexp.c:973,13'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:978,13'
          Dst:             re_string_list_canonicalize
        - Src:             'libregexp.c:979,13'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:986,12'
          Dst:             re_parse_out_of_memory
    - functionName:    lre_parse_escape
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 736
      functionLinenumberEnd: 850
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         77
      ICount:          370
      EdgeCount:       102
      CyclomaticComplexity: 27
      functionsReached:
        - from_hex
        - from_surrogate
        - is_digit
        - is_hi_surrogate
        - is_lo_surrogate
      functionUses:    7
      BranchProfiles:
        - Branch String:   'libregexp.c:742,5'
          Branch Sides:    []
      Callsites:
        - Src:             'libregexp.c:765,18'
          Dst:             from_hex
        - Src:             'libregexp.c:768,18'
          Dst:             from_hex
        - Src:             'libregexp.c:783,25'
          Dst:             from_hex
        - Src:             'libregexp.c:796,25'
          Dst:             from_hex
        - Src:             'libregexp.c:796,25'
          Dst:             from_hex
        - Src:             'libregexp.c:796,25'
          Dst:             from_hex
        - Src:             'libregexp.c:796,25'
          Dst:             from_hex
        - Src:             'libregexp.c:802,21'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:808,29'
          Dst:             from_hex
        - Src:             'libregexp.c:808,29'
          Dst:             from_hex
        - Src:             'libregexp.c:808,29'
          Dst:             from_hex
        - Src:             'libregexp.c:808,29'
          Dst:             from_hex
        - Src:             'libregexp.c:813,35'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:815,29'
          Dst:             from_surrogate
        - Src:             'libregexp.c:826,27'
          Dst:             is_digit
    - functionName:    from_hex
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 366
      functionLinenumberEnd: 375
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          54
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_hi_surrogate
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 341
      functionLinenumberEnd: 342
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    19
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_lo_surrogate
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 346
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    19
      BranchProfiles:  []
      Callsites:       []
    - functionName:    from_surrogate
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    16
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_digit
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          19
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    re_parse_class_set_operand
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1357
      functionLinenumberEnd: 1380
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          76
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - cr_union_interval
        - get_class_atom
        - lre_canonicalize
        - re_parse_nested_class
        - re_string_list_free
        - re_string_list_init
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:1362,13'
          Dst:             re_parse_nested_class
        - Src:             'libregexp.c:1365,14'
          Dst:             get_class_atom
        - Src:             'libregexp.c:1370,13'
          Dst:             re_string_list_init
        - Src:             'libregexp.c:1372,22'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:1373,17'
          Dst:             cr_union_interval
        - Src:             'libregexp.c:1374,17'
          Dst:             re_string_list_free
    - functionName:    re_parse_nested_class
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1383
      functionLinenumberEnd: 1537
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         124
      ICount:          522
      EdgeCount:       173
      CyclomaticComplexity: 51
      functionsReached:
        - cr_add_interval
        - cr_free
        - cr_init
        - cr_invert
        - cr_op1
        - cr_regexp_canonicalize
        - cr_union_interval
        - get_class_atom
        - lre_canonicalize
        - lre_check_stack_overflow
        - lre_realloc
        - re_parse_class_set_operand
        - re_parse_error
        - re_parse_nested_class
        - re_parse_out_of_memory
        - re_string_list_free
        - re_string_list_init
        - re_string_list_op
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:1390,9'
          Dst:             lre_check_stack_overflow
        - Src:             'libregexp.c:1391,16'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1393,5'
          Dst:             re_string_list_init
        - Src:             'libregexp.c:1409,17'
          Dst:             re_parse_nested_class
        - Src:             'libregexp.c:1413,18'
          Dst:             get_class_atom
        - Src:             'libregexp.c:1422,25'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:1428,22'
          Dst:             get_class_atom
        - Src:             'libregexp.c:1432,21'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:1442,21'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1447,21'
          Dst:             cr_init
        - Src:             'libregexp.c:1447,21'
          Dst:             lre_realloc
        - Src:             'libregexp.c:1448,25'
          Dst:             cr_add_interval
        - Src:             'libregexp.c:1449,25'
          Dst:             cr_regexp_canonicalize
        - Src:             'libregexp.c:1450,25'
          Dst:             cr_op1
        - Src:             'libregexp.c:1454,21'
          Dst:             cr_free
        - Src:             'libregexp.c:1451,25'
          Dst:             cr_free
        - Src:             'libregexp.c:1456,25'
          Dst:             cr_union_interval
        - Src:             'libregexp.c:1464,27'
          Dst:             re_string_list_op
        - Src:             'libregexp.c:1465,21'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:1470,30'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:1471,25'
          Dst:             cr_union_interval
        - Src:             'libregexp.c:1487,25'
          Dst:             re_parse_class_set_operand
        - Src:             'libregexp.c:1489,27'
          Dst:             re_string_list_op
        - Src:             'libregexp.c:1490,21'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:1506,25'
          Dst:             re_parse_class_set_operand
        - Src:             'libregexp.c:1503,25'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1508,27'
          Dst:             re_string_list_op
        - Src:             'libregexp.c:1509,21'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:1525,13'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1528,13'
          Dst:             cr_invert
        - Src:             'libregexp.c:1533,5'
          Dst:             re_parse_out_of_memory
        - Src:             'libregexp.c:1535,5'
          Dst:             re_string_list_free
    - functionName:    cr_add_interval
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - cr_realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './libunicode.h:74,13'
          Dst:             cr_realloc
    - functionName:    re_string_list_op
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 304
      functionLinenumberEnd: 349
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          189
      EdgeCount:       50
      CyclomaticComplexity: 11
      functionsReached:
        - abort
        - cr_op1
        - lre_realloc
        - re_string_find2
      functionUses:    3
      BranchProfiles:
        - Branch String:   'libregexp.c:311,5'
          Branch Sides:    []
      Callsites:
        - Src:             'libregexp.c:308,9'
          Dst:             cr_op1
        - Src:             'libregexp.c:316,25'
          Dst:             re_string_find2
        - Src:             'libregexp.c:330,23'
          Dst:             re_string_find2
        - Src:             'libregexp.c:337,21'
          Dst:             lre_realloc
        - Src:             'libregexp.c:346,9'
          Dst:             abort
    - functionName:    lre_is_id_continue_byte
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lre_is_id_start_byte
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 145
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lre_js_is_ident_next
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          41
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - lre_is_id_continue
        - lre_is_id_continue_byte
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './libunicode.h:183,16'
          Dst:             lre_is_id_continue_byte
        - Src:             './libunicode.h:189,16'
          Dst:             lre_is_id_continue
    - functionName:    lre_js_is_ident_first
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          26
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - lre_is_id_start
        - lre_is_id_start_byte
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './libunicode.h:171,16'
          Dst:             lre_is_id_start_byte
        - Src:             './libunicode.h:174,16'
          Dst:             lre_is_id_start
    - functionName:    re_emit_goto_u8
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 641
      functionLinenumberEnd: 647
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_put_u32
        - dbuf_putc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:643,5'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:644,5'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:646,5'
          Dst:             dbuf_put_u32
    - functionName:    re_emit_goto_u8_u32
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 651
      functionLinenumberEnd: 658
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_put_u32
        - dbuf_putc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:653,5'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:654,5'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:655,5'
          Dst:             dbuf_put_u32
        - Src:             'libregexp.c:657,5'
          Dst:             dbuf_put_u32
    - functionName:    re_emit_goto
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 632
      functionLinenumberEnd: 637
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_put_u32
        - dbuf_putc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:634,5'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:636,5'
          Dst:             dbuf_put_u32
    - functionName:    re_need_check_adv_and_capture_init
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1559
      functionLinenumberEnd: 1627
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          189
      EdgeCount:       46
      CyclomaticComplexity: 3
      functionsReached:
        - get_u16
      functionUses:    1
      BranchProfiles:
        - Branch String:   'libregexp.c:1570,9'
          Branch Sides:    []
      Callsites:
        - Src:             'libregexp.c:1573,19'
          Dst:             get_u16
        - Src:             'libregexp.c:1579,19'
          Dst:             get_u16
    - functionName:    get_u16
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    re_emit_char
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1269
      functionLinenumberEnd: 1274
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - re_emit_op_u16
        - re_emit_op_u32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:1271,9'
          Dst:             re_emit_op_u16
        - Src:             'libregexp.c:1273,9'
          Dst:             re_emit_op_u32
    - functionName:    re_emit_string_list
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1277
      functionLinenumberEnd: 1352
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         69
      ICount:          318
      EdgeCount:       92
      CyclomaticComplexity: 25
      functionsReached:
        - __assert_fail
        - get_u32
        - lre_realloc
        - put_u32
        - re_emit_char
        - re_emit_op_u32
        - re_emit_range
        - re_parse_out_of_memory
        - re_string_cmp_len
        - rqsort
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:1285,13'
          Dst:             re_emit_range
        - Src:             'libregexp.c:1290,15'
          Dst:             lre_realloc
        - Src:             'libregexp.c:1292,13'
          Dst:             re_parse_out_of_memory
        - Src:             'libregexp.c:1306,9'
          Dst:             __assert_fail
        - Src:             'libregexp.c:1308,9'
          Dst:             rqsort
        - Src:             'libregexp.c:1308,9'
          Dst:             re_string_cmp_len
        - Src:             'libregexp.c:1315,29'
          Dst:             re_emit_op_u32
        - Src:             'libregexp.c:1319,17'
          Dst:             re_emit_char
        - Src:             'libregexp.c:1322,34'
          Dst:             re_emit_op_u32
        - Src:             'libregexp.c:1323,17'
          Dst:             put_u32
        - Src:             'libregexp.c:1308,9'
          Dst:             rqsort
        - Src:             'libregexp.c:1308,9'
          Dst:             re_string_cmp_len
        - Src:             'libregexp.c:1334,17'
          Dst:             re_emit_range
        - Src:             'libregexp.c:1331,29'
          Dst:             re_emit_op_u32
        - Src:             'libregexp.c:1334,17'
          Dst:             re_emit_range
        - Src:             'libregexp.c:1335,17'
          Dst:             lre_realloc
        - Src:             'libregexp.c:1339,17'
          Dst:             put_u32
        - Src:             'libregexp.c:1344,28'
          Dst:             get_u32
        - Src:             'libregexp.c:1345,13'
          Dst:             put_u32
        - Src:             'libregexp.c:1349,9'
          Dst:             lre_realloc
    - functionName:    get_u32
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    re_parse_char_class
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1540
      functionLinenumberEnd: 1552
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          38
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - re_emit_string_list
        - re_parse_nested_class
        - re_string_list_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:1543,9'
          Dst:             re_parse_nested_class
        - Src:             'libregexp.c:1545,9'
          Dst:             re_emit_string_list
        - Src:             'libregexp.c:0,0'
          Dst:             re_string_list_free
    - functionName:    re_count_captures
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1744
      functionLinenumberEnd: 1749
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - re_parse_captures
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:1746,34'
          Dst:             re_parse_captures
    - functionName:    re_parse_captures
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1689
      functionLinenumberEnd: 1741
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         49
      ICount:          216
      EdgeCount:       65
      CyclomaticComplexity: 18
      functionsReached:
        - dbuf_putc
        - re_parse_group_name
        - strcmp
      functionUses:    3
      BranchProfiles:
        - Branch String:   'libregexp.c:1698,9'
          Branch Sides:    []
      Callsites:
        - Src:             'libregexp.c:1706,29'
          Dst:             re_parse_group_name
        - Src:             'libregexp.c:1707,34'
          Dst:             strcmp
        - Src:             'libregexp.c:1709,37'
          Dst:             dbuf_putc
    - functionName:    re_parse_group_name
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1632
      functionLinenumberEnd: 1683
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         35
      ICount:          165
      EdgeCount:       48
      CyclomaticComplexity: 15
      functionsReached:
        - from_surrogate
        - is_hi_surrogate
        - is_lo_surrogate
        - lre_js_is_ident_first
        - lre_js_is_ident_next
        - lre_parse_escape
        - unicode_from_utf8
        - unicode_to_utf8
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:1645,17'
          Dst:             lre_parse_escape
        - Src:             'libregexp.c:1649,17'
          Dst:             unicode_from_utf8
        - Src:             'libregexp.c:1650,17'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:1651,21'
          Dst:             unicode_from_utf8
        - Src:             'libregexp.c:1652,21'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:1653,25'
          Dst:             from_surrogate
        - Src:             'libregexp.c:1663,18'
          Dst:             lre_js_is_ident_first
        - Src:             'libregexp.c:1666,18'
          Dst:             lre_js_is_ident_next
        - Src:             'libregexp.c:1674,18'
          Dst:             unicode_to_utf8
    - functionName:    find_group_name
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1760
      functionLinenumberEnd: 1783
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          79
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - dbuf_putc
        - memcmp
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:1769,16'
          Dst:             strlen
        - Src:             'libregexp.c:1773,15'
          Dst:             strlen
        - Src:             'libregexp.c:1774,32'
          Dst:             memcmp
        - Src:             'libregexp.c:1776,17'
          Dst:             dbuf_putc
    - functionName:    re_has_named_captures
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1753
      functionLinenumberEnd: 1756
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - re_count_captures
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:1755,9'
          Dst:             re_count_captures
    - functionName:    is_duplicate_group_name
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1786
      functionLinenumberEnd: 1806
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          76
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - memcmp
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:1795,16'
          Dst:             strlen
        - Src:             'libregexp.c:1797,15'
          Dst:             strlen
        - Src:             'libregexp.c:1798,32'
          Dst:             memcmp
    - functionName:    update_modifier
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1837
      functionLinenumberEnd: 1842
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          30
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    re_parse_modifiers
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1811
      functionLinenumberEnd: 1833
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          59
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - re_parse_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:1827,20'
          Dst:             re_parse_error
    - functionName:    re_parse_expect
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 715
      functionLinenumberEnd: 723
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - re_parse_error
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:719,16'
          Dst:             re_parse_error
    - functionName:    parse_digits
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 690
      functionLinenumberEnd: 712
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          68
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    re_parse_term
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1846
      functionLinenumberEnd: 2370
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         307
      ICount:          1625
      EdgeCount:       417
      CyclomaticComplexity: 112
      functionsReached:
        - dbuf_error
        - dbuf_insert
        - dbuf_put
        - dbuf_putc
        - find_group_name
        - get_class_atom
        - is_digit
        - is_duplicate_group_name
        - lre_canonicalize
        - parse_digits
        - put_u32
        - re_count_captures
        - re_emit_char
        - re_emit_goto
        - re_emit_goto_u8
        - re_emit_goto_u8_u32
        - re_emit_op
        - re_emit_op_u32
        - re_emit_op_u8
        - re_emit_string_list
        - re_has_named_captures
        - re_need_check_adv_and_capture_init
        - re_parse_captures
        - re_parse_char_class
        - re_parse_disjunction
        - re_parse_error
        - re_parse_expect
        - re_parse_group_name
        - re_parse_modifiers
        - re_parse_out_of_memory
        - re_string_list_free
        - strlen
        - update_modifier
      functionUses:    1
      BranchProfiles:
        - Branch String:   'libregexp.c:1856,5'
          Branch Sides:    []
        - Branch String:   'libregexp.c:2031,9'
          Branch Sides:    []
        - Branch String:   'libregexp.c:2199,9'
          Branch Sides:    []
      Callsites:
        - Src:             'libregexp.c:1859,9'
          Dst:             re_emit_op
        - Src:             'libregexp.c:1863,9'
          Dst:             re_emit_op
        - Src:             'libregexp.c:1870,13'
          Dst:             re_emit_op
        - Src:             'libregexp.c:1871,9'
          Dst:             re_emit_op
        - Src:             'libregexp.c:1873,13'
          Dst:             re_emit_op
        - Src:             'libregexp.c:1877,20'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1878,21'
          Dst:             is_digit
        - Src:             'libregexp.c:1885,13'
          Dst:             parse_digits
        - Src:             'libregexp.c:1888,21'
          Dst:             is_digit
        - Src:             'libregexp.c:1889,21'
          Dst:             parse_digits
        - Src:             'libregexp.c:1900,16'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1908,21'
          Dst:             re_parse_disjunction
        - Src:             'libregexp.c:1911,21'
          Dst:             re_parse_expect
        - Src:             'libregexp.c:1918,28'
          Dst:             re_parse_modifiers
        - Src:             'libregexp.c:1923,35'
          Dst:             re_parse_modifiers
        - Src:             'libregexp.c:1929,28'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1931,21'
          Dst:             re_parse_expect
        - Src:             'libregexp.c:1936,34'
          Dst:             update_modifier
        - Src:             'libregexp.c:1937,33'
          Dst:             update_modifier
        - Src:             'libregexp.c:1938,29'
          Dst:             update_modifier
        - Src:             'libregexp.c:1943,21'
          Dst:             re_parse_disjunction
        - Src:             'libregexp.c:1946,21'
          Dst:             re_parse_expect
        - Src:             'libregexp.c:1970,23'
          Dst:             re_emit_op_u32
        - Src:             'libregexp.c:1972,21'
          Dst:             re_parse_disjunction
        - Src:             'libregexp.c:1975,21'
          Dst:             re_parse_expect
        - Src:             'libregexp.c:1977,17'
          Dst:             re_emit_op
        - Src:             'libregexp.c:1979,21'
          Dst:             dbuf_error
        - Src:             'libregexp.c:1981,17'
          Dst:             put_u32
        - Src:             'libregexp.c:1984,21'
          Dst:             re_parse_group_name
        - Src:             'libregexp.c:1986,28'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1991,21'
          Dst:             is_duplicate_group_name
        - Src:             'libregexp.c:1992,28'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1996,26'
          Dst:             strlen
        - Src:             'libregexp.c:1995,17'
          Dst:             dbuf_put
        - Src:             'libregexp.c:1997,17'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:2001,24'
          Dst:             re_parse_error
        - Src:             'libregexp.c:2007,13'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:2008,13'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:2011,24'
          Dst:             re_parse_error
        - Src:             'libregexp.c:2015,13'
          Dst:             re_emit_op_u8
        - Src:             'libregexp.c:2019,17'
          Dst:             re_parse_disjunction
        - Src:             'libregexp.c:2023,13'
          Dst:             re_emit_op_u8
        - Src:             'libregexp.c:2026,17'
          Dst:             re_parse_expect
        - Src:             'libregexp.c:0,0'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2052,42'
          Dst:             re_has_named_captures
        - Src:             'libregexp.c:2058,21'
          Dst:             re_parse_group_name
        - Src:             'libregexp.c:2060,42'
          Dst:             re_has_named_captures
        - Src:             'libregexp.c:2066,21'
          Dst:             find_group_name
        - Src:             'libregexp.c:2070,25'
          Dst:             re_parse_captures
        - Src:             'libregexp.c:2072,46'
          Dst:             re_has_named_captures
        - Src:             'libregexp.c:2083,17'
          Dst:             re_emit_op_u8
        - Src:             'libregexp.c:2085,21'
          Dst:             re_parse_captures
        - Src:             'libregexp.c:2087,21'
          Dst:             find_group_name
        - Src:             'libregexp.c:0,0'
          Dst:             re_parse_error
        - Src:             'libregexp.c:2096,21'
          Dst:             is_digit
        - Src:             'libregexp.c:2097,28'
          Dst:             re_parse_error
        - Src:             'libregexp.c:2115,21'
          Dst:             parse_digits
        - Src:             'libregexp.c:2116,61'
          Dst:             re_count_captures
        - Src:             'libregexp.c:2135,28'
          Dst:             re_parse_error
        - Src:             'libregexp.c:2140,17'
          Dst:             re_emit_op_u8
        - Src:             'libregexp.c:2141,17'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:2153,13'
          Dst:             re_parse_char_class
        - Src:             'libregexp.c:2152,13'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2153,13'
          Dst:             re_parse_char_class
        - Src:             'libregexp.c:2156,13'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2161,20'
          Dst:             re_parse_error
        - Src:             'libregexp.c:2165,13'
          Dst:             get_class_atom
        - Src:             'libregexp.c:2172,13'
          Dst:             re_emit_op
        - Src:             'libregexp.c:0,0'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2183,13'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:2181,23'
          Dst:             re_emit_string_list
        - Src:             'libregexp.c:2183,13'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:2188,21'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:2189,13'
          Dst:             re_emit_char
        - Src:             'libregexp.c:2192,13'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2220,22'
          Dst:             is_digit
        - Src:             'libregexp.c:2226,29'
          Dst:             parse_digits
        - Src:             'libregexp.c:2230,25'
          Dst:             is_digit
        - Src:             'libregexp.c:2231,37'
          Dst:             parse_digits
        - Src:             'libregexp.c:2234,36'
          Dst:             re_parse_error
        - Src:             'libregexp.c:2245,21'
          Dst:             re_parse_expect
        - Src:             'libregexp.c:2266,21'
          Dst:             re_need_check_adv_and_capture_init
        - Src:             'libregexp.c:2277,25'
          Dst:             dbuf_insert
        - Src:             'libregexp.c:2290,29'
          Dst:             dbuf_insert
        - Src:             'libregexp.c:2300,29'
          Dst:             dbuf_insert
        - Src:             'libregexp.c:2304,25'
          Dst:             put_u32
        - Src:             'libregexp.c:2309,29'
          Dst:             re_emit_op_u8
        - Src:             'libregexp.c:2312,29'
          Dst:             re_emit_goto
        - Src:             'libregexp.c:2314,29'
          Dst:             dbuf_insert
        - Src:             'libregexp.c:2318,25'
          Dst:             put_u32
        - Src:             'libregexp.c:2323,25'
          Dst:             put_u32
        - Src:             'libregexp.c:2330,25'
          Dst:             re_emit_goto_u8_u32
        - Src:             'libregexp.c:2334,21'
          Dst:             re_emit_goto
        - Src:             'libregexp.c:2339,25'
          Dst:             dbuf_insert
        - Src:             'libregexp.c:2345,21'
          Dst:             put_u32
        - Src:             'libregexp.c:2354,25'
          Dst:             re_emit_goto_u8
        - Src:             'libregexp.c:2356,25'
          Dst:             re_emit_goto_u8_u32
        - Src:             'libregexp.c:2369,12'
          Dst:             re_parse_out_of_memory
    - functionName:    re_emit_op
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 617
      functionLinenumberEnd: 619
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_putc
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:618,5'
          Dst:             dbuf_putc
    - functionName:    re_parse_disjunction
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2407
      functionLinenumberEnd: 2440
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          103
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - dbuf_insert
        - lre_check_stack_overflow
        - put_u32
        - re_emit_op_u32
        - re_parse_alternative
        - re_parse_error
        - re_parse_out_of_memory
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:2410,9'
          Dst:             lre_check_stack_overflow
        - Src:             'libregexp.c:2411,16'
          Dst:             re_parse_error
        - Src:             'libregexp.c:2414,9'
          Dst:             re_parse_alternative
        - Src:             'libregexp.c:2422,13'
          Dst:             dbuf_insert
        - Src:             'libregexp.c:2423,20'
          Dst:             re_parse_out_of_memory
        - Src:             'libregexp.c:2426,9'
          Dst:             put_u32
        - Src:             'libregexp.c:2428,15'
          Dst:             re_emit_op_u32
        - Src:             'libregexp.c:2432,13'
          Dst:             re_parse_alternative
        - Src:             'libregexp.c:2437,9'
          Dst:             put_u32
    - functionName:    dbuf_error
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 322
      functionLinenumberEnd: 323
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    re_emit_op_u8
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 662
      functionLinenumberEnd: 665
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_putc
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:663,5'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:664,5'
          Dst:             dbuf_putc
    - functionName:    dbuf_insert
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dbuf_claim
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:125,9'
          Dst:             dbuf_claim
    - functionName:    re_parse_alternative
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2373
      functionLinenumberEnd: 2404
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          88
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - dbuf_claim
        - re_parse_term
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:2386,15'
          Dst:             re_parse_term
        - Src:             'libregexp.c:2394,17'
          Dst:             dbuf_claim
    - functionName:    lre_get_groupnames
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3385
      functionLinenumberEnd: 3391
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_u32
        - lre_get_flags
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:3387,10'
          Dst:             lre_get_flags
        - Src:             'libregexp.c:3389,23'
          Dst:             get_u32
    - functionName:    lre_get_flags
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3378
      functionLinenumberEnd: 3379
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_u16
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:3379,12'
          Dst:             get_u16
    - functionName:    lre_get_capture_count
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3373
      functionLinenumberEnd: 3374
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lre_get_alloc_count
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3367
      functionLinenumberEnd: 3369
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lre_exec_backtrack
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2776
      functionLinenumberEnd: 3321
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         547
      ICount:          2661
      EdgeCount:       747
      CyclomaticComplexity: 202
      functionsReached:
        - __assert_fail
        - abort
        - from_surrogate
        - get_u16
        - get_u32
        - is_hi_surrogate
        - is_line_terminator
        - is_lo_surrogate
        - lre_canonicalize
        - lre_is_space
        - lre_is_word_byte
        - lre_poll_timeout
        - stack_realloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'libregexp.c:2849,9'
          Branch Sides:    []
      Callsites:
        - Src:             'libregexp.c:2871,17'
          Dst:             lre_poll_timeout
        - Src:             'libregexp.c:2928,19'
          Dst:             get_u32
        - Src:             'libregexp.c:2933,19'
          Dst:             get_u16
        - Src:             'libregexp.c:2938,13'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:2938,13'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:2938,13'
          Dst:             from_surrogate
        - Src:             'libregexp.c:2940,21'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:2950,23'
          Dst:             get_u32
        - Src:             'libregexp.c:2958,17'
          Dst:             stack_realloc
        - Src:             'libregexp.c:2969,19'
          Dst:             get_u32
        - Src:             'libregexp.c:2971,13'
          Dst:             stack_realloc
        - Src:             'libregexp.c:2980,19'
          Dst:             get_u32
        - Src:             'libregexp.c:2982,17'
          Dst:             lre_poll_timeout
        - Src:             'libregexp.c:2991,13'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:2991,13'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:2991,13'
          Dst:             from_surrogate
        - Src:             'libregexp.c:2992,18'
          Dst:             is_line_terminator
        - Src:             'libregexp.c:3001,13'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3001,13'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3001,13'
          Dst:             from_surrogate
        - Src:             'libregexp.c:3002,18'
          Dst:             is_line_terminator
        - Src:             'libregexp.c:3008,13'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3008,13'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3008,13'
          Dst:             from_surrogate
        - Src:             'libregexp.c:3009,17'
          Dst:             is_line_terminator
        - Src:             'libregexp.c:3015,13'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3015,13'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3020,13'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3020,13'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3020,13'
          Dst:             from_surrogate
        - Src:             'libregexp.c:3021,18'
          Dst:             lre_is_space
        - Src:             'libregexp.c:3027,13'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3027,13'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3027,13'
          Dst:             from_surrogate
        - Src:             'libregexp.c:3028,17'
          Dst:             lre_is_space
        - Src:             'libregexp.c:3034,13'
          Dst:             __assert_fail
        - Src:             'libregexp.c:3036,13'
          Dst:             stack_realloc
        - Src:             'libregexp.c:3044,17'
          Dst:             __assert_fail
        - Src:             'libregexp.c:3045,17'
          Dst:             stack_realloc
        - Src:             'libregexp.c:3048,21'
          Dst:             stack_realloc
        - Src:             'libregexp.c:3050,21'
          Dst:             stack_realloc
        - Src:             'libregexp.c:3057,19'
          Dst:             get_u32
        - Src:             'libregexp.c:3059,13'
          Dst:             stack_realloc
        - Src:             'libregexp.c:3065,23'
          Dst:             get_u32
        - Src:             'libregexp.c:3069,17'
          Dst:             stack_realloc
        - Src:             'libregexp.c:3072,25'
          Dst:             lre_poll_timeout
        - Src:             'libregexp.c:3085,25'
          Dst:             get_u32
        - Src:             'libregexp.c:3086,23'
          Dst:             get_u32
        - Src:             'libregexp.c:3091,17'
          Dst:             stack_realloc
        - Src:             'libregexp.c:3096,25'
          Dst:             lre_poll_timeout
        - Src:             'libregexp.c:3116,25'
          Dst:             stack_realloc
        - Src:             'libregexp.c:3130,13'
          Dst:             stack_realloc
        - Src:             'libregexp.c:3150,21'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3150,21'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3150,21'
          Dst:             from_surrogate
        - Src:             'libregexp.c:3152,31'
          Dst:             lre_is_word_byte
        - Src:             'libregexp.c:3161,21'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3161,21'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3161,21'
          Dst:             from_surrogate
        - Src:             'libregexp.c:3163,31'
          Dst:             lre_is_word_byte
        - Src:             'libregexp.c:3200,33'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3200,33'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3200,33'
          Dst:             from_surrogate
        - Src:             'libregexp.c:3201,33'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3201,33'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3201,33'
          Dst:             from_surrogate
        - Src:             'libregexp.c:3203,42'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:3204,42'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:3214,33'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3214,33'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3214,33'
          Dst:             from_surrogate
        - Src:             'libregexp.c:3215,33'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3215,33'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3215,33'
          Dst:             from_surrogate
        - Src:             'libregexp.c:3217,42'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:3218,42'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:3235,21'
          Dst:             get_u16
        - Src:             'libregexp.c:3239,17'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3239,17'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3239,17'
          Dst:             from_surrogate
        - Src:             'libregexp.c:3241,25'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:3244,23'
          Dst:             get_u16
        - Src:             'libregexp.c:3248,24'
          Dst:             get_u16
        - Src:             'libregexp.c:3256,27'
          Dst:             get_u16
        - Src:             'libregexp.c:3257,28'
          Dst:             get_u16
        - Src:             'libregexp.c:3276,21'
          Dst:             get_u16
        - Src:             'libregexp.c:3280,17'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3280,17'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3280,17'
          Dst:             from_surrogate
        - Src:             'libregexp.c:3282,25'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:3285,23'
          Dst:             get_u32
        - Src:             'libregexp.c:3289,24'
          Dst:             get_u32
        - Src:             'libregexp.c:3294,27'
          Dst:             get_u32
        - Src:             'libregexp.c:3295,28'
          Dst:             get_u32
        - Src:             'libregexp.c:3312,13'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3312,13'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3318,13'
          Dst:             abort
    - functionName:    lre_exec
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3329
      functionLinenumberEnd: 3364
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          144
      EdgeCount:       34
      CyclomaticComplexity: 11
      functionsReached:
        - is_hi_surrogate
        - is_lo_surrogate
        - lre_exec_backtrack
        - lre_get_flags
        - lre_realloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:3334,16'
          Dst:             lre_get_flags
        - Src:             'libregexp.c:3354,13'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3354,36'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3359,11'
          Dst:             lre_exec_backtrack
        - Src:             'libregexp.c:3362,9'
          Dst:             lre_realloc
    - functionName:    compute_register_count
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2445
      functionLinenumberEnd: 2505
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         45
      ICount:          203
      EdgeCount:       48
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
        - get_u16
      functionUses:    1
      BranchProfiles:
        - Branch String:   'libregexp.c:2459,9'
          Branch Sides:    []
      Callsites:
        - Src:             'libregexp.c:2457,9'
          Dst:             __assert_fail
        - Src:             'libregexp.c:2458,9'
          Dst:             __assert_fail
        - Src:             'libregexp.c:2474,13'
          Dst:             __assert_fail
        - Src:             'libregexp.c:2480,13'
          Dst:             __assert_fail
        - Src:             'libregexp.c:2486,19'
          Dst:             get_u16
        - Src:             'libregexp.c:2491,19'
          Dst:             get_u16
    - functionName:    lre_bytecode_realloc
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2508
      functionLinenumberEnd: 2516
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          24
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - lre_realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:2514,16'
          Dst:             lre_realloc
    - functionName:    lre_compile
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2525
      functionLinenumberEnd: 2614
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          173
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - compute_register_count
        - dbuf_error
        - dbuf_free
        - dbuf_init2
        - dbuf_put
        - dbuf_put_u16
        - dbuf_put_u32
        - dbuf_putc
        - lre_bytecode_realloc
        - lre_get_flags
        - lre_realloc
        - pstrcpy
        - put_u16
        - put_u32
        - re_emit_op
        - re_emit_op_u32
        - re_emit_op_u8
        - re_parse_disjunction
        - re_parse_error
        - re_parse_out_of_memory
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:2546,5'
          Dst:             dbuf_init2
        - Src:             'libregexp.c:2546,5'
          Dst:             lre_bytecode_realloc
        - Src:             'libregexp.c:2547,5'
          Dst:             dbuf_init2
        - Src:             'libregexp.c:2547,5'
          Dst:             lre_realloc
        - Src:             'libregexp.c:2549,5'
          Dst:             dbuf_put_u16
        - Src:             'libregexp.c:2550,5'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:2551,5'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:2552,5'
          Dst:             dbuf_put_u32
        - Src:             'libregexp.c:2559,9'
          Dst:             re_emit_op_u32
        - Src:             'libregexp.c:2560,9'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2561,9'
          Dst:             re_emit_op_u32
        - Src:             'libregexp.c:2563,5'
          Dst:             re_emit_op_u8
        - Src:             'libregexp.c:2565,9'
          Dst:             re_parse_disjunction
        - Src:             'libregexp.c:2567,9'
          Dst:             dbuf_free
        - Src:             'libregexp.c:2568,9'
          Dst:             dbuf_free
        - Src:             'libregexp.c:2569,9'
          Dst:             pstrcpy
        - Src:             'libregexp.c:2574,5'
          Dst:             re_emit_op_u8
        - Src:             'libregexp.c:2576,5'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2579,9'
          Dst:             re_parse_error
        - Src:             'libregexp.c:2583,9'
          Dst:             dbuf_error
        - Src:             'libregexp.c:2584,9'
          Dst:             re_parse_out_of_memory
        - Src:             'libregexp.c:2588,22'
          Dst:             compute_register_count
        - Src:             'libregexp.c:2590,9'
          Dst:             re_parse_error
        - Src:             'libregexp.c:2596,5'
          Dst:             put_u32
        - Src:             'libregexp.c:2601,9'
          Dst:             dbuf_put
        - Src:             'libregexp.c:2603,17'
          Dst:             lre_get_flags
        - Src:             'libregexp.c:2602,9'
          Dst:             put_u16
        - Src:             'libregexp.c:2605,5'
          Dst:             dbuf_free
    - functionName:    unicode_compose_pair
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 998
      functionLinenumberEnd: 1030
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          85
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - unicode_decomp_entry
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:1017,9'
          Dst:             unicode_decomp_entry
    - functionName:    unicode_decomp_entry
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 830
      functionLinenumberEnd: 963
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         105
      ICount:          574
      EdgeCount:       126
      CyclomaticComplexity: 23
      functionsReached:
        - unicode_get16
        - unicode_get_lower_simple
        - unicode_get_short_code
      functionUses:    2
      BranchProfiles:
        - Branch String:   'libunicode.c:840,9'
          Branch Sides:    []
      Callsites:
        - Src:             'libunicode.c:851,31'
          Dst:             unicode_get16
        - Src:             'libunicode.c:863,26'
          Dst:             unicode_get16
        - Src:             'libunicode.c:880,31'
          Dst:             unicode_get_short_code
        - Src:             'libunicode.c:898,22'
          Dst:             unicode_get16
        - Src:             'libunicode.c:919,25'
          Dst:             unicode_get16
        - Src:             'libunicode.c:933,28'
          Dst:             unicode_get16
        - Src:             'libunicode.c:935,22'
          Dst:             unicode_get_short_code
        - Src:             'libunicode.c:938,22'
          Dst:             unicode_get16
        - Src:             'libunicode.c:939,22'
          Dst:             unicode_get16
        - Src:             'libunicode.c:941,22'
          Dst:             unicode_get16
        - Src:             'libunicode.c:948,21'
          Dst:             unicode_get_short_code
        - Src:             'libunicode.c:952,21'
          Dst:             unicode_get16
        - Src:             'libunicode.c:956,21'
          Dst:             unicode_get_lower_simple
        - Src:             'libunicode.c:958,22'
          Dst:             unicode_get_short_code
    - functionName:    unicode_get16
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 823
      functionLinenumberEnd: 824
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unicode_get_short_code
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 802
      functionLinenumberEnd: 811
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unicode_get_lower_simple
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 814
      functionLinenumberEnd: 819
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          32
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    put_u32
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unicode_decomp_char
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 969
      functionLinenumberEnd: 994
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          67
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - unicode_decomp_entry
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:990,20'
          Dst:             unicode_decomp_entry
    - functionName:    dbuf_put_u32
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 298
      functionLinenumberEnd: 306
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __dbuf_put_u32
        - put_u32
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './cutils.h:300,16'
          Dst:             __dbuf_put_u32
        - Src:             './cutils.h:302,9'
          Dst:             put_u32
    - functionName:    point_cmp
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 616
      functionLinenumberEnd: 619
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_le24
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_index_pos
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 273
      functionLinenumberEnd: 302
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          78
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - get_le24
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:278,9'
          Dst:             get_le24
        - Src:             'libunicode.c:285,12'
          Dst:             get_le24
        - Src:             'libunicode.c:291,13'
          Dst:             get_le24
        - Src:             'libunicode.c:299,9'
          Dst:             get_le24
    - functionName:    lre_case_conv1
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - lre_case_conv
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:54,5'
          Dst:             lre_case_conv
    - functionName:    lre_case_conv
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          104
      EdgeCount:       34
      CyclomaticComplexity: 11
      functionsReached:
        - lre_case_conv_entry
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:184,24'
          Dst:             lre_case_conv_entry
    - functionName:    lre_case_conv_entry
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         52
      ICount:          307
      EdgeCount:       66
      CyclomaticComplexity: 16
      functionsReached:
        - lre_case_conv1
      functionUses:    3
      BranchProfiles:
        - Branch String:   'libunicode.c:66,5'
          Branch Sides:    []
      Callsites:
        - Src:             'libunicode.c:128,22'
          Dst:             lre_case_conv1
        - Src:             'libunicode.c:129,22'
          Dst:             lre_case_conv1
        - Src:             'libunicode.c:141,22'
          Dst:             lre_case_conv1
        - Src:             'libunicode.c:142,22'
          Dst:             lre_case_conv1
        - Src:             'libunicode.c:143,22'
          Dst:             lre_case_conv1
    - functionName:    unicode_sequence_prop1
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1923
      functionLinenumberEnd: 2112
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         147
      ICount:          778
      EdgeCount:       192
      CyclomaticComplexity: 47
      functionsReached:
        - __assert_fail
        - unicode_prop1
        - unicode_sequence_prop1
      functionUses:    7
      BranchProfiles:
        - Branch String:   'libunicode.c:1927,5'
          Branch Sides:    []
        - Branch String:   'libunicode.c:2042,25'
          Branch Sides:    []
      Callsites:
        - Src:             'libunicode.c:2102,19'
          Dst:             unicode_sequence_prop1
        - Src:             'libunicode.c:1929,13'
          Dst:             unicode_prop1
        - Src:             'libunicode.c:1940,13'
          Dst:             unicode_prop1
        - Src:             'libunicode.c:1952,13'
          Dst:             unicode_prop1
        - Src:             'libunicode.c:1965,13'
          Dst:             unicode_prop1
        - Src:             'libunicode.c:2005,25'
          Dst:             __assert_fail
        - Src:             'libunicode.c:2087,13'
          Dst:             unicode_prop1
        - Src:             'libunicode.c:2102,19'
          Dst:             unicode_sequence_prop1
        - Src:             'libunicode.c:2102,19'
          Dst:             unicode_sequence_prop1
        - Src:             'libunicode.c:2102,19'
          Dst:             unicode_sequence_prop1
        - Src:             'libunicode.c:2102,19'
          Dst:             unicode_sequence_prop1
        - Src:             'libunicode.c:2102,19'
          Dst:             unicode_sequence_prop1
    - functionName:    unicode_prop1
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1460
      functionLinenumberEnd: 1504
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          129
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - cr_add_interval
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:1482,21'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:1498,17'
          Dst:             cr_add_interval
    - functionName:    cr_add_interval
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - cr_realloc
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             './libunicode.h:74,13'
          Dst:             cr_realloc
    - functionName:    cr_realloc
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 407
      functionLinenumberEnd: 421
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - max_int
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:412,20'
          Dst:             max_int
    - functionName:    max_int
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          16
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unicode_sequence_prop
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2118
      functionLinenumberEnd: 2124
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          25
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - unicode_find_name
        - unicode_sequence_prop1
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:2120,20'
          Dst:             unicode_find_name
        - Src:             'libunicode.c:2123,12'
          Dst:             unicode_sequence_prop1
    - functionName:    unicode_find_name
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1248
      functionLinenumberEnd: 1272
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          80
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - memcmp
        - strchr
        - strlen
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:1255,16'
          Dst:             strlen
        - Src:             'libunicode.c:1258,17'
          Dst:             strchr
        - Src:             'libunicode.c:1260,23'
          Dst:             strlen
        - Src:             'libunicode.c:1263,37'
          Dst:             memcmp
    - functionName:    lre_is_space_non_ascii
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1904
      functionLinenumberEnd: 1917
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         34
      ICount:          121
      EdgeCount:       49
      CyclomaticComplexity: 17
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unicode_prop_ops
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1520
      functionLinenumberEnd: 1593
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         60
      ICount:          327
      EdgeCount:       69
      CyclomaticComplexity: 11
      functionsReached:
        - __assert_fail
        - abort
        - cr_copy
        - cr_free
        - cr_init
        - cr_invert
        - cr_op
        - unicode_case1
        - unicode_general_category1
        - unicode_prop1
      functionUses:    14
      BranchProfiles:
        - Branch String:   'libunicode.c:1530,9'
          Branch Sides:    []
      Callsites:
        - Src:             'libunicode.c:1532,13'
          Dst:             __assert_fail
        - Src:             'libunicode.c:1534,13'
          Dst:             cr_init
        - Src:             'libunicode.c:1535,17'
          Dst:             unicode_general_category1
        - Src:             'libunicode.c:1539,13'
          Dst:             __assert_fail
        - Src:             'libunicode.c:1541,13'
          Dst:             cr_init
        - Src:             'libunicode.c:1542,17'
          Dst:             unicode_prop1
        - Src:             'libunicode.c:1546,13'
          Dst:             __assert_fail
        - Src:             'libunicode.c:1548,13'
          Dst:             cr_init
        - Src:             'libunicode.c:1549,17'
          Dst:             unicode_case1
        - Src:             'libunicode.c:1557,17'
          Dst:             __assert_fail
        - Src:             'libunicode.c:1558,17'
          Dst:             __assert_fail
        - Src:             'libunicode.c:1562,17'
          Dst:             cr_init
        - Src:             'libunicode.c:1564,21'
          Dst:             cr_op
        - Src:             'libunicode.c:1567,17'
          Dst:             cr_free
        - Src:             'libunicode.c:1568,17'
          Dst:             cr_free
        - Src:             'libunicode.c:1574,13'
          Dst:             __assert_fail
        - Src:             'libunicode.c:1575,17'
          Dst:             cr_invert
        - Src:             'libunicode.c:1581,13'
          Dst:             abort
        - Src:             'libunicode.c:1585,5'
          Dst:             __assert_fail
        - Src:             'libunicode.c:1586,11'
          Dst:             cr_copy
        - Src:             'libunicode.c:1587,5'
          Dst:             cr_free
        - Src:             'libunicode.c:1591,9'
          Dst:             cr_free
    - functionName:    cr_init
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 394
      functionLinenumberEnd: 399
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unicode_general_category1
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1399
      functionLinenumberEnd: 1457
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          158
      EdgeCount:       45
      CyclomaticComplexity: 14
      functionsReached:
        - cr_add_interval
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:1445,29'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:1452,17'
          Dst:             cr_add_interval
    - functionName:    unicode_case1
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 553
      functionLinenumberEnd: 613
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         51
      ICount:          208
      EdgeCount:       68
      CyclomaticComplexity: 19
      functionsReached:
        - cr_add_interval
      functionUses:    5
      BranchProfiles:
        - Branch String:   'libunicode.c:580,13'
          Branch Sides:    []
      Callsites:
        - Src:             'libunicode.c:586,25'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:594,25'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:597,21'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:597,21'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:600,25'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:606,21'
          Dst:             cr_add_interval
    - functionName:    cr_op
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 464
      functionLinenumberEnd: 515
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          134
      EdgeCount:       34
      CyclomaticComplexity: 7
      functionsReached:
        - abort
        - cr_add_point
        - cr_compress
      functionUses:    7
      BranchProfiles:
        - Branch String:   'libunicode.c:492,9'
          Branch Sides:    []
      Callsites:
        - Src:             'libunicode.c:506,13'
          Dst:             abort
        - Src:             'libunicode.c:509,17'
          Dst:             cr_add_point
        - Src:             'libunicode.c:513,5'
          Dst:             cr_compress
    - functionName:    cr_free
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 402
      functionLinenumberEnd: 404
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    17
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cr_invert
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 530
      functionLinenumberEnd: 541
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cr_compress
        - cr_realloc
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:533,9'
          Dst:             cr_realloc
        - Src:             'libunicode.c:539,5'
          Dst:             cr_compress
    - functionName:    cr_copy
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 424
      functionLinenumberEnd: 430
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cr_realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:425,9'
          Dst:             cr_realloc
    - functionName:    cr_compress
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 434
      functionLinenumberEnd: 459
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          97
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cr_add_point
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - cr_realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './libunicode.h:64,13'
          Dst:             cr_realloc
    - functionName:    cr_default_realloc
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 389
      functionLinenumberEnd: 390
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:390,12'
          Dst:             realloc
    - functionName:    unicode_prop
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1628
      functionLinenumberEnd: 1821
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          147
      EdgeCount:       36
      CyclomaticComplexity: 5
      functionsReached:
        - cr_add_interval
        - unicode_case1
        - unicode_find_name
        - unicode_prop1
        - unicode_prop_ops
      functionUses:    1
      BranchProfiles:
        - Branch String:   'libunicode.c:1637,5'
          Branch Sides:    []
      Callsites:
        - Src:             'libunicode.c:1631,16'
          Dst:             unicode_find_name
        - Src:             'libunicode.c:1639,13'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:1643,13'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:1647,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1653,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1660,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1667,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1674,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1683,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1694,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1702,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1709,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1723,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1740,15'
          Dst:             unicode_case1
        - Src:             'libunicode.c:1743,15'
          Dst:             unicode_case1
        - Src:             'libunicode.c:1746,15'
          Dst:             unicode_case1
        - Src:             'libunicode.c:1749,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1756,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1763,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1807,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1817,15'
          Dst:             unicode_prop1
    - functionName:    unicode_general_category
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1609
      functionLinenumberEnd: 1622
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          41
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - unicode_find_name
        - unicode_general_category1
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:1613,14'
          Dst:             unicode_find_name
        - Src:             'libunicode.c:1621,12'
          Dst:             unicode_general_category1
    - functionName:    unicode_script
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1278
      functionLinenumberEnd: 1394
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         82
      ICount:          383
      EdgeCount:       112
      CyclomaticComplexity: 32
      functionsReached:
        - cr_add_interval
        - cr_free
        - cr_init
        - cr_invert
        - cr_op
        - unicode_find_name
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:1286,18'
          Dst:             unicode_find_name
        - Src:             'libunicode.c:1294,9'
          Dst:             cr_init
        - Src:             'libunicode.c:1295,9'
          Dst:             cr_init
        - Src:             'libunicode.c:1322,21'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:1330,13'
          Dst:             cr_invert
        - Src:             'libunicode.c:1357,25'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:1363,29'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:1374,17'
          Dst:             cr_invert
        - Src:             'libunicode.c:1376,17'
          Dst:             cr_op
        - Src:             'libunicode.c:1380,17'
          Dst:             cr_op
        - Src:             'libunicode.c:1384,9'
          Dst:             cr_free
        - Src:             'libunicode.c:1385,9'
          Dst:             cr_free
        - Src:             'libunicode.c:1390,9'
          Dst:             cr_free
        - Src:             'libunicode.c:1391,9'
          Dst:             cr_free
    - functionName:    compose_pair
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1157
      functionLinenumberEnd: 1169
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          90
      EdgeCount:       32
      CyclomaticComplexity: 11
      functionsReached:
        - unicode_compose_pair
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:1167,16'
          Dst:             unicode_compose_pair
    - functionName:    unicode_get_cc
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1034
      functionLinenumberEnd: 1089
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         22
      ICount:          120
      EdgeCount:       25
      CyclomaticComplexity: 5
      functionsReached:
        - get_index_pos
      functionUses:    6
      BranchProfiles:
        - Branch String:   'libunicode.c:1070,13'
          Branch Sides:    []
      Callsites:
        - Src:             'libunicode.c:1039,11'
          Dst:             get_index_pos
    - functionName:    sort_cc
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1092
      functionLinenumberEnd: 1125
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          118
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - unicode_get_cc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:1096,14'
          Dst:             unicode_get_cc
        - Src:             'libunicode.c:1102,23'
          Dst:             unicode_get_cc
        - Src:             'libunicode.c:1107,25'
          Dst:             unicode_get_cc
    - functionName:    dbuf_error
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 322
      functionLinenumberEnd: 323
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    to_nfd_rec
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1129
      functionLinenumberEnd: 1153
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          91
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - dbuf_put_u32
        - to_nfd_rec
        - unicode_decomp_char
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:1139,13'
          Dst:             dbuf_put_u32
        - Src:             'libunicode.c:1140,13'
          Dst:             dbuf_put_u32
        - Src:             'libunicode.c:1143,17'
          Dst:             dbuf_put_u32
        - Src:             'libunicode.c:1145,17'
          Dst:             unicode_decomp_char
        - Src:             'libunicode.c:1147,17'
          Dst:             to_nfd_rec
        - Src:             'libunicode.c:1149,17'
          Dst:             dbuf_put_u32
    - functionName:    unicode_normalize
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1174
      functionLinenumberEnd: 1243
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         46
      ICount:          209
      EdgeCount:       63
      CyclomaticComplexity: 19
      functionsReached:
        - compose_pair
        - dbuf_claim
        - dbuf_error
        - dbuf_init2
        - sort_cc
        - to_nfd_rec
        - unicode_get_cc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:1181,5'
          Dst:             dbuf_init2
        - Src:             'libunicode.c:1182,9'
          Dst:             dbuf_claim
        - Src:             'libunicode.c:1199,5'
          Dst:             to_nfd_rec
        - Src:             'libunicode.c:1200,9'
          Dst:             dbuf_error
        - Src:             'libunicode.c:1208,5'
          Dst:             sort_cc
        - Src:             'libunicode.c:1221,19'
          Dst:             unicode_get_cc
        - Src:             'libunicode.c:1224,18'
          Dst:             unicode_get_cc
        - Src:             'libunicode.c:1224,18'
          Dst:             unicode_get_cc
        - Src:             'libunicode.c:1233,18'
          Dst:             compose_pair
    - functionName:    lre_is_id_continue
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 754
      functionLinenumberEnd: 756
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          25
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - lre_is_id_start
        - lre_is_in_table
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:755,12'
          Dst:             lre_is_id_start
        - Src:             'libunicode.c:756,9'
          Dst:             lre_is_in_table
    - functionName:    lre_is_id_start
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 747
      functionLinenumberEnd: 748
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - lre_is_in_table
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:748,12'
          Dst:             lre_is_in_table
    - functionName:    lre_is_in_table
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 345
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          111
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - get_index_pos
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:311,11'
          Dst:             get_index_pos
    - functionName:    cr_sort_and_remove_overlap
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 623
      functionLinenumberEnd: 656
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          109
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - point_cmp
        - rqsort
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:627,5'
          Dst:             rqsort
        - Src:             'libunicode.c:627,5'
          Dst:             point_cmp
    - functionName:    cr_regexp_canonicalize
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 661
      functionLinenumberEnd: 742
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         44
      ICount:          252
      EdgeCount:       59
      CyclomaticComplexity: 17
      functionsReached:
        - __assert_fail
        - cr_add_interval
        - cr_free
        - cr_init
        - cr_invert
        - cr_op
        - cr_sort_and_remove_overlap
        - lre_case_folding_entry
        - unicode_case1
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:665,5'
          Dst:             cr_init
        - Src:             'libunicode.c:666,5'
          Dst:             cr_init
        - Src:             'libunicode.c:667,5'
          Dst:             cr_init
        - Src:             'libunicode.c:668,5'
          Dst:             cr_init
        - Src:             'libunicode.c:670,9'
          Dst:             unicode_case1
        - Src:             'libunicode.c:672,9'
          Dst:             cr_op
        - Src:             'libunicode.c:675,9'
          Dst:             cr_invert
        - Src:             'libunicode.c:677,9'
          Dst:             cr_op
        - Src:             'libunicode.c:699,17'
          Dst:             __assert_fail
        - Src:             'libunicode.c:704,17'
          Dst:             lre_case_folding_entry
        - Src:             'libunicode.c:712,17'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:719,13'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:724,5'
          Dst:             cr_sort_and_remove_overlap
        - Src:             'libunicode.c:728,9'
          Dst:             cr_op
        - Src:             'libunicode.c:0,0'
          Dst:             cr_free
        - Src:             'libunicode.c:0,0'
          Dst:             cr_free
        - Src:             'libunicode.c:0,0'
          Dst:             cr_free
        - Src:             'libunicode.c:0,0'
          Dst:             cr_free
    - functionName:    lre_case_folding_entry
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 224
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          94
      EdgeCount:       34
      CyclomaticComplexity: 12
      functionsReached:
        - lre_case_conv_entry
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:198,15'
          Dst:             lre_case_conv_entry
        - Src:             'libunicode.c:218,19'
          Dst:             lre_case_conv_entry
    - functionName:    cr_op1
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 518
      functionLinenumberEnd: 527
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cr_free
        - cr_op
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:524,11'
          Dst:             cr_op
        - Src:             'libunicode.c:525,5'
          Dst:             cr_free
    - functionName:    lre_is_case_ignorable
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 373
      functionLinenumberEnd: 374
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - lre_is_in_table
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:374,12'
          Dst:             lre_is_in_table
    - functionName:    lre_is_cased
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 370
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          57
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - lre_is_in_table
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:367,12'
          Dst:             lre_is_in_table
    - functionName:    lre_canonicalize
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 228
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          101
      EdgeCount:       33
      CyclomaticComplexity: 11
      functionsReached:
        - lre_case_folding_entry
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:256,24'
          Dst:             lre_case_folding_entry
    - functionName:    exchange_bytes
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 345
      functionLinenumberEnd: 354
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          194
      EdgeCount:       47
      CyclomaticComplexity: 14
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    exchange_one_byte
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 356
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    exchange_int16s
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 364
      functionLinenumberEnd: 373
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          204
      EdgeCount:       47
      CyclomaticComplexity: 14
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    exchange_one_int16
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 375
      functionLinenumberEnd: 381
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    exchange_int32s
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 383
      functionLinenumberEnd: 392
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          154
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    exchange_one_int32
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 394
      functionLinenumberEnd: 400
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    exchange_int64s
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 402
      functionLinenumberEnd: 411
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          154
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    exchange_one_int64
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 413
      functionLinenumberEnd: 419
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    exchange_int128s
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 421
      functionLinenumberEnd: 433
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          80
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    exchange_one_int128
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 435
      functionLinenumberEnd: 444
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    med3
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 518
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          66
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    heapsortx
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 481
      functionLinenumberEnd: 512
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          190
      EdgeCount:       55
      CyclomaticComplexity: 16
      functionsReached:
        - exchange_func
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cutils.c:484,23'
          Dst:             exchange_func
    - functionName:    exchange_func
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 446
      functionLinenumberEnd: 478
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          89
      EdgeCount:       26
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'cutils.c:447,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    rqsort
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 523
      functionLinenumberEnd: 639
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         65
      ICount:          347
      EdgeCount:       87
      CyclomaticComplexity: 24
      functionsReached:
        - exchange_func
        - heapsortx
        - med3
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'cutils.c:528,23'
          Dst:             exchange_func
        - Src:             'cutils.c:529,29'
          Dst:             exchange_func
        - Src:             'cutils.c:548,17'
          Dst:             heapsortx
        - Src:             'cutils.c:555,17'
          Dst:             med3
    - functionName:    unicode_from_utf8
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 262
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          90
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    24
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unicode_to_utf8
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 217
      functionLinenumberEnd: 249
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          120
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dbuf_free
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 212
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    28
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dbuf_printf
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 202
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          64
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - dbuf_claim
        - dbuf_put
        - vsnprintf
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'cutils.c:185,11'
          Dst:             vsnprintf
        - Src:             'cutils.c:191,16'
          Dst:             dbuf_put
        - Src:             'cutils.c:193,13'
          Dst:             dbuf_claim
        - Src:             'cutils.c:196,9'
          Dst:             vsnprintf
    - functionName:    dbuf_put
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dbuf_claim
        - memcpy_no_ub
      functionUses:    24
      BranchProfiles:  []
      Callsites:
        - Src:             'cutils.c:133,13'
          Dst:             dbuf_claim
        - Src:             'cutils.c:136,5'
          Dst:             memcpy_no_ub
    - functionName:    dbuf_claim
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          82
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcpy_no_ub
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          16
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dbuf_putstr
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 173
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_put
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'cutils.c:174,46'
          Dst:             strlen
        - Src:             'cutils.c:174,12'
          Dst:             dbuf_put
    - functionName:    __dbuf_put_u64
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 168
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_put
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cutils.c:169,12'
          Dst:             dbuf_put
    - functionName:    __dbuf_put_u32
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_put
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'cutils.c:164,12'
          Dst:             dbuf_put
    - functionName:    __dbuf_put_u16
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'cutils.c:159,12'
          Dst:             dbuf_put
    - functionName:    __dbuf_putc
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_put
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'cutils.c:154,12'
          Dst:             dbuf_put
    - functionName:    dbuf_put_self
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          46
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dbuf_claim
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cutils.c:144,13'
          Dst:             dbuf_claim
    - functionName:    dbuf_init
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_init2
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cutils.c:100,5'
          Dst:             dbuf_init2
    - functionName:    dbuf_init2
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dbuf_default_realloc
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cutils.c:86,12'
          Dst:             realloc
    - functionName:    has_suffix
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - memcmp
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'cutils.c:77,18'
          Dst:             strlen
        - Src:             'cutils.c:78,19'
          Dst:             strlen
        - Src:             'cutils.c:79,29'
          Dst:             memcmp
    - functionName:    strstart
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          50
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pstrcat
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - pstrcpy
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'cutils.c:53,11'
          Dst:             strlen
        - Src:             'cutils.c:55,9'
          Dst:             pstrcpy
    - functionName:    pstrcpy
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          49
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __list_add
      functionSourceFile: '/src/quickjs/./list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_time_ns
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2133
      functionLinenumberEnd: 2137
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - clock_gettime
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:2135,5'
          Dst:             clock_gettime
    - functionName:    my_execvpe
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3057
      functionLinenumberEnd: 3109
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          130
      EdgeCount:       37
      CyclomaticComplexity: 9
      functionsReached:
        - __errno_location
        - execve
        - getenv
        - strchr
        - strlen
      functionUses:    1
      BranchProfiles:
        - Branch String:   'quickjs-libc.c:3095,9'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs-libc.c:3063,20'
          Dst:             strlen
        - Src:             'quickjs-libc.c:3065,9'
          Dst:             __errno_location
        - Src:             'quickjs-libc.c:3068,9'
          Dst:             strchr
        - Src:             'quickjs-libc.c:3069,16'
          Dst:             execve
        - Src:             'quickjs-libc.c:3071,12'
          Dst:             getenv
        - Src:             'quickjs-libc.c:3077,14'
          Dst:             strchr
        - Src:             'quickjs-libc.c:3080,24'
          Dst:             strlen
        - Src:             'quickjs-libc.c:3093,9'
          Dst:             execve
        - Src:             'quickjs-libc.c:3095,16'
          Dst:             __errno_location
        - Src:             'quickjs-libc.c:3107,9'
          Dst:             __errno_location
    - functionName:    __errno_location
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    19
      BranchProfiles:  []
      Callsites:       []
    - functionName:    execve
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getenv
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    min_int
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          16
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_envp
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2999
      functionLinenumberEnd: 3053
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          151
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - JS_AtomToCString
        - JS_FreeCString
        - JS_FreePropertyEnum
        - JS_FreeValue
        - JS_GetOwnPropertyNames
        - JS_GetPropertyInternal
        - JS_IsException
        - JS_ToCString
        - js_free
        - js_malloc
        - js_mallocz
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:3007,9'
          Dst:             JS_GetOwnPropertyNames
        - Src:             'quickjs-libc.c:3010,12'
          Dst:             js_mallocz
        - Src:             'quickjs-libc.c:3014,15'
          Dst:             JS_GetPropertyInternal
        - Src:             'quickjs-libc.c:3015,13'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:3017,15'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:3018,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:3021,15'
          Dst:             JS_AtomToCString
        - Src:             'quickjs-libc.c:3026,19'
          Dst:             strlen
        - Src:             'quickjs-libc.c:3027,19'
          Dst:             strlen
        - Src:             'quickjs-libc.c:3028,16'
          Dst:             js_malloc
        - Src:             'quickjs-libc.c:3030,13'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:3039,9'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:3040,9'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:3043,5'
          Dst:             JS_FreePropertyEnum
        - Src:             'quickjs-libc.c:0,0'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:3048,13'
          Dst:             js_free
        - Src:             'quickjs-libc.c:3049,9'
          Dst:             js_free
    - functionName:    JS_IsException
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 639
      functionLinenumberEnd: 640
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    32
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_ToCString
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 748
      functionLinenumberEnd: 749
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_ToCStringLen2
      functionUses:    31
      BranchProfiles:  []
      Callsites:
        - Src:             './quickjs.h:749,12'
          Dst:             JS_ToCStringLen2
    - functionName:    JS_FreeValue
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 679
      functionLinenumberEnd: 686
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          35
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - __JS_FreeValue
      functionUses:    39
      BranchProfiles:  []
      Callsites:
        - Src:             './quickjs.h:683,13'
          Dst:             __JS_FreeValue
    - functionName:    JS_AtomToCString
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 460
      functionLinenumberEnd: 461
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_AtomToCStringLen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './quickjs.h:461,12'
          Dst:             JS_AtomToCStringLen
    - functionName:    ms_to_timeval
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2850
      functionLinenumberEnd: 2853
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    timespec_to_ms
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2748
      functionLinenumberEnd: 2749
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    make_obj_error
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2626
      functionLinenumberEnd: 2638
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          46
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_DefinePropertyValueUint32
        - JS_IsException
        - JS_NewArray
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:2628,9'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:2630,11'
          Dst:             JS_NewArray
        - Src:             'quickjs-libc.c:2631,9'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:2633,5'
          Dst:             JS_DefinePropertyValueUint32
        - Src:             'quickjs-libc.c:2635,5'
          Dst:             JS_DefinePropertyValueUint32
    - functionName:    make_string_error
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2643
      functionLinenumberEnd: 2644
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_NewString
        - make_obj_error
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:2644,32'
          Dst:             JS_NewString
        - Src:             'quickjs-libc.c:2644,12'
          Dst:             make_obj_error
    - functionName:    JS_NewString
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 736
      functionLinenumberEnd: 737
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_NewStringLen
        - strlen
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             './quickjs.h:737,38'
          Dst:             strlen
        - Src:             './quickjs.h:737,12'
          Dst:             JS_NewStringLen
    - functionName:    find_timer_by_id
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2197
      functionLinenumberEnd: 2207
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          44
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    os_signal_handler
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2069
      functionLinenumberEnd: 2071
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    find_sh
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2050
      functionLinenumberEnd: 2059
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          37
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_ToUint32
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 723
      functionLinenumberEnd: 724
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_ToInt32
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './quickjs.h:724,12'
          Dst:             JS_ToInt32
    - functionName:    is_main_thread
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1979
      functionLinenumberEnd: 1981
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_GetRuntimeOpaque
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1980,25'
          Dst:             JS_GetRuntimeOpaque
    - functionName:    find_rh
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1985
      functionLinenumberEnd: 1995
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          27
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    term_exit
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1897
      functionLinenumberEnd: 1899
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - tcsetattr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1898,5'
          Dst:             tcsetattr
    - functionName:    tcsetattr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_IsBigInt
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 618
      functionLinenumberEnd: 620
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_os_dup2
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3411
      functionLinenumberEnd: 3420
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          54
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_ToInt32
        - dup2
        - js_get_errno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:3414,9'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:3416,9'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:3418,24'
          Dst:             dup2
        - Src:             'quickjs-libc.c:3418,11'
          Dst:             js_get_errno
    - functionName:    dup2
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_get_errno
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 945
      functionLinenumberEnd: 948
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __errno_location
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:947,16'
          Dst:             __errno_location
    - functionName:    js_os_dup
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3399
      functionLinenumberEnd: 3406
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_ToInt32
        - dup
        - js_get_errno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:3402,9'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:3404,24'
          Dst:             dup
        - Src:             'quickjs-libc.c:3404,11'
          Dst:             js_get_errno
    - functionName:    dup
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_os_kill
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3385
      functionLinenumberEnd: 3394
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          54
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_ToInt32
        - js_get_errno
        - kill
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:3388,9'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:3390,9'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:3392,24'
          Dst:             kill
        - Src:             'quickjs-libc.c:3392,11'
          Dst:             js_get_errno
    - functionName:    kill
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_os_pipe
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3365
      functionLinenumberEnd: 3380
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          53
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_DefinePropertyValueUint32
        - JS_IsException
        - JS_NewArray
        - pipe
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:3369,11'
          Dst:             pipe
        - Src:             'quickjs-libc.c:3372,11'
          Dst:             JS_NewArray
        - Src:             'quickjs-libc.c:3373,9'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:3375,5'
          Dst:             JS_DefinePropertyValueUint32
        - Src:             'quickjs-libc.c:3377,5'
          Dst:             JS_DefinePropertyValueUint32
    - functionName:    pipe
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_os_waitpid
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3337
      functionLinenumberEnd: 3360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          91
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_DefinePropertyValueUint32
        - JS_IsException
        - JS_NewArray
        - JS_ToInt32
        - __errno_location
        - waitpid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:3341,9'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:3343,9'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:3346,11'
          Dst:             waitpid
        - Src:             'quickjs-libc.c:3348,16'
          Dst:             __errno_location
        - Src:             'quickjs-libc.c:3352,11'
          Dst:             JS_NewArray
        - Src:             'quickjs-libc.c:3353,9'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:3355,5'
          Dst:             JS_DefinePropertyValueUint32
        - Src:             'quickjs-libc.c:3357,5'
          Dst:             JS_DefinePropertyValueUint32
    - functionName:    waitpid
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_os_getpid
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3330
      functionLinenumberEnd: 3331
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - getpid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:3331,29'
          Dst:             getpid
    - functionName:    getpid
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_os_exec
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3114
      functionLinenumberEnd: 3325
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         163
      ICount:          749
      EdgeCount:       222
      CyclomaticComplexity: 61
      functionsReached:
        - JS_FreeCString
        - JS_FreeValue
        - JS_GetPropertyStr
        - JS_GetPropertyUint32
        - JS_IsException
        - JS_IsUndefined
        - JS_ThrowTypeError
        - JS_ToCString
        - JS_ToInt32
        - JS_ToUint32
        - _exit
        - build_envp
        - chdir
        - close
        - dup2
        - execve
        - fork
        - get_bool_option
        - js_free
        - js_mallocz
        - min_int
        - my_execvpe
        - setgid
        - setuid
        - sysconf
        - waitpid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:3126,11'
          Dst:             JS_GetPropertyStr
        - Src:             'quickjs-libc.c:3127,9'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:3129,11'
          Dst:             JS_ToUint32
        - Src:             'quickjs-libc.c:3130,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:3135,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs-libc.c:3137,17'
          Dst:             js_mallocz
        - Src:             'quickjs-libc.c:3141,15'
          Dst:             JS_GetPropertyUint32
        - Src:             'quickjs-libc.c:3142,13'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:3144,15'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:3145,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:3159,13'
          Dst:             get_bool_option
        - Src:             'quickjs-libc.c:3161,13'
          Dst:             get_bool_option
        - Src:             'quickjs-libc.c:3164,15'
          Dst:             JS_GetPropertyStr
        - Src:             'quickjs-libc.c:3165,13'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:3167,14'
          Dst:             JS_IsUndefined
        - Src:             'quickjs-libc.c:3168,20'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:3169,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:3174,15'
          Dst:             JS_GetPropertyStr
        - Src:             'quickjs-libc.c:3175,13'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:3177,14'
          Dst:             JS_IsUndefined
        - Src:             'quickjs-libc.c:3178,19'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:3179,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:3186,19'
          Dst:             JS_GetPropertyStr
        - Src:             'quickjs-libc.c:3187,17'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:3189,18'
          Dst:             JS_IsUndefined
        - Src:             'quickjs-libc.c:3191,23'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:3192,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:3186,19'
          Dst:             JS_GetPropertyStr
        - Src:             'quickjs-libc.c:3187,17'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:3189,18'
          Dst:             JS_IsUndefined
        - Src:             'quickjs-libc.c:3191,23'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:3192,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:3186,19'
          Dst:             JS_GetPropertyStr
        - Src:             'quickjs-libc.c:3187,17'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:3189,18'
          Dst:             JS_IsUndefined
        - Src:             'quickjs-libc.c:3191,23'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:3192,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:3199,15'
          Dst:             JS_GetPropertyStr
        - Src:             'quickjs-libc.c:3200,13'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:3202,14'
          Dst:             JS_IsUndefined
        - Src:             'quickjs-libc.c:3203,20'
          Dst:             build_envp
        - Src:             'quickjs-libc.c:3204,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:3209,15'
          Dst:             JS_GetPropertyStr
        - Src:             'quickjs-libc.c:3210,13'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:3212,14'
          Dst:             JS_IsUndefined
        - Src:             'quickjs-libc.c:3213,19'
          Dst:             JS_ToUint32
        - Src:             'quickjs-libc.c:3214,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:3219,15'
          Dst:             JS_GetPropertyStr
        - Src:             'quickjs-libc.c:3220,13'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:3222,14'
          Dst:             JS_IsUndefined
        - Src:             'quickjs-libc.c:3223,19'
          Dst:             JS_ToUint32
        - Src:             'quickjs-libc.c:3224,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:3230,11'
          Dst:             fork
        - Src:             'quickjs-libc.c:3232,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs-libc.c:3241,21'
          Dst:             dup2
        - Src:             'quickjs-libc.c:3242,21'
          Dst:             _exit
        - Src:             'quickjs-libc.c:3241,21'
          Dst:             dup2
        - Src:             'quickjs-libc.c:3241,21'
          Dst:             dup2
        - Src:             'quickjs-libc.c:3262,34'
          Dst:             sysconf
        - Src:             'quickjs-libc.c:3262,26'
          Dst:             min_int
        - Src:             'quickjs-libc.c:3264,17'
          Dst:             close
        - Src:             'quickjs-libc.c:3268,17'
          Dst:             chdir
        - Src:             'quickjs-libc.c:3269,17'
          Dst:             _exit
        - Src:             'quickjs-libc.c:3272,17'
          Dst:             setuid
        - Src:             'quickjs-libc.c:3273,17'
          Dst:             _exit
        - Src:             'quickjs-libc.c:3276,17'
          Dst:             setgid
        - Src:             'quickjs-libc.c:3277,17'
          Dst:             _exit
        - Src:             'quickjs-libc.c:3283,19'
          Dst:             my_execvpe
        - Src:             'quickjs-libc.c:3285,19'
          Dst:             execve
        - Src:             'quickjs-libc.c:3286,9'
          Dst:             _exit
        - Src:             'quickjs-libc.c:3291,19'
          Dst:             waitpid
        - Src:             'quickjs-libc.c:3307,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:3308,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:3310,9'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:3311,5'
          Dst:             js_free
        - Src:             'quickjs-libc.c:3316,13'
          Dst:             js_free
        - Src:             'quickjs-libc.c:3319,9'
          Dst:             js_free
    - functionName:    get_bool_option
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 861
      functionLinenumberEnd: 871
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          39
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeValue
        - JS_GetPropertyStr
        - JS_IsException
        - JS_IsUndefined
        - JS_ToBool
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:863,11'
          Dst:             JS_GetPropertyStr
        - Src:             'quickjs-libc.c:864,9'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:866,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs-libc.c:867,18'
          Dst:             JS_ToBool
        - Src:             'quickjs-libc.c:869,5'
          Dst:             JS_FreeValue
    - functionName:    JS_IsUndefined
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 634
      functionLinenumberEnd: 635
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fork
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _exit
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sysconf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    close
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chdir
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    setuid
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    setgid
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_os_readlink
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2977
      functionLinenumberEnd: 2996
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeCString
        - JS_ToCString
        - __errno_location
        - make_string_error
        - readlink
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:2983,12'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:2986,11'
          Dst:             readlink
        - Src:             'quickjs-libc.c:2989,15'
          Dst:             __errno_location
        - Src:             'quickjs-libc.c:2994,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:2995,12'
          Dst:             make_string_error
    - functionName:    readlink
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_os_symlink
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2956
      functionLinenumberEnd: 2972
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeCString
        - JS_ToCString
        - js_get_errno
        - symlink
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:2960,14'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:2963,16'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:2965,9'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:2968,24'
          Dst:             symlink
        - Src:             'quickjs-libc.c:2968,11'
          Dst:             js_get_errno
        - Src:             'quickjs-libc.c:2969,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:2970,5'
          Dst:             JS_FreeCString
    - functionName:    symlink
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_os_realpath
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2934
      functionLinenumberEnd: 2951
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeCString
        - JS_ToCString
        - __errno_location
        - make_string_error
        - realpath
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:2939,12'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:2942,11'
          Dst:             realpath
        - Src:             'quickjs-libc.c:2943,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:2946,15'
          Dst:             __errno_location
        - Src:             'quickjs-libc.c:2950,12'
          Dst:             make_string_error
    - functionName:    realpath
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_os_sleep
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2892
      functionLinenumberEnd: 2917
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_ToInt64
        - js_get_errno
        - nanosleep
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:2896,9'
          Dst:             JS_ToInt64
        - Src:             'quickjs-libc.c:2913,28'
          Dst:             nanosleep
        - Src:             'quickjs-libc.c:2913,15'
          Dst:             js_get_errno
    - functionName:    nanosleep
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_os_utimes
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2858
      functionLinenumberEnd: 2887
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          72
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeCString
        - JS_ToCString
        - JS_ToInt64
        - js_get_errno
        - ms_to_timeval
        - utimes
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:2863,9'
          Dst:             JS_ToInt64
        - Src:             'quickjs-libc.c:2865,9'
          Dst:             JS_ToInt64
        - Src:             'quickjs-libc.c:2867,12'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:2880,9'
          Dst:             ms_to_timeval
        - Src:             'quickjs-libc.c:2881,9'
          Dst:             ms_to_timeval
        - Src:             'quickjs-libc.c:2882,28'
          Dst:             utimes
        - Src:             'quickjs-libc.c:2882,15'
          Dst:             js_get_errno
        - Src:             'quickjs-libc.c:2885,5'
          Dst:             JS_FreeCString
    - functionName:    utimes
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_os_stat
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2756
      functionLinenumberEnd: 2846
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          297
      EdgeCount:       62
      CyclomaticComplexity: 17
      functionsReached:
        - JS_DefinePropertyValueStr
        - JS_FreeCString
        - JS_IsException
        - JS_NewObject
        - JS_ToCString
        - __JS_NewFloat64
        - __errno_location
        - lstat
        - make_obj_error
        - stat
        - timespec_to_ms
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:2762,12'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:2769,15'
          Dst:             lstat
        - Src:             'quickjs-libc.c:2771,15'
          Dst:             stat
        - Src:             'quickjs-libc.c:2774,15'
          Dst:             __errno_location
        - Src:             'quickjs-libc.c:2777,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:2777,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:2781,15'
          Dst:             JS_NewObject
        - Src:             'quickjs-libc.c:2782,13'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:2785,35'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs-libc.c:2784,9'
          Dst:             JS_DefinePropertyValueStr
        - Src:             'quickjs-libc.c:2788,35'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs-libc.c:2787,9'
          Dst:             JS_DefinePropertyValueStr
        - Src:             'quickjs-libc.c:2790,9'
          Dst:             JS_DefinePropertyValueStr
        - Src:             'quickjs-libc.c:2794,35'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs-libc.c:2793,9'
          Dst:             JS_DefinePropertyValueStr
        - Src:             'quickjs-libc.c:2797,35'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs-libc.c:2796,9'
          Dst:             JS_DefinePropertyValueStr
        - Src:             'quickjs-libc.c:2800,35'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs-libc.c:2799,9'
          Dst:             JS_DefinePropertyValueStr
        - Src:             'quickjs-libc.c:2803,35'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs-libc.c:2802,9'
          Dst:             JS_DefinePropertyValueStr
        - Src:             'quickjs-libc.c:2806,35'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs-libc.c:2805,9'
          Dst:             JS_DefinePropertyValueStr
        - Src:             'quickjs-libc.c:2810,35'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs-libc.c:2809,9'
          Dst:             JS_DefinePropertyValueStr
        - Src:             'quickjs-libc.c:2835,52'
          Dst:             timespec_to_ms
        - Src:             'quickjs-libc.c:2835,35'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs-libc.c:2834,9'
          Dst:             JS_DefinePropertyValueStr
        - Src:             'quickjs-libc.c:2838,52'
          Dst:             timespec_to_ms
        - Src:             'quickjs-libc.c:2838,35'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs-libc.c:2837,9'
          Dst:             JS_DefinePropertyValueStr
        - Src:             'quickjs-libc.c:2841,52'
          Dst:             timespec_to_ms
        - Src:             'quickjs-libc.c:2841,35'
          Dst:             __JS_NewFloat64
        - Src:             'quickjs-libc.c:2840,9'
          Dst:             JS_DefinePropertyValueStr
        - Src:             'quickjs-libc.c:2845,12'
          Dst:             make_obj_error
    - functionName:    lstat
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    stat
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __JS_NewFloat64
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 256
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    16
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_os_readdir
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2705
      functionLinenumberEnd: 2744
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          80
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - JS_DefinePropertyValueUint32
        - JS_FreeCString
        - JS_IsException
        - JS_NewArray
        - JS_NewString
        - JS_ToCString
        - __errno_location
        - closedir
        - make_obj_error
        - opendir
        - readdir
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:2713,12'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:2716,11'
          Dst:             JS_NewArray
        - Src:             'quickjs-libc.c:2717,9'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:2718,9'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:2721,9'
          Dst:             opendir
        - Src:             'quickjs-libc.c:2723,15'
          Dst:             __errno_location
        - Src:             'quickjs-libc.c:2726,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:2726,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:0,0'
          Dst:             __errno_location
        - Src:             'quickjs-libc.c:2732,13'
          Dst:             readdir
        - Src:             'quickjs-libc.c:2741,5'
          Dst:             closedir
        - Src:             'quickjs-libc.c:2738,38'
          Dst:             JS_NewString
        - Src:             'quickjs-libc.c:2737,9'
          Dst:             JS_DefinePropertyValueUint32
        - Src:             'quickjs-libc.c:2743,12'
          Dst:             make_obj_error
    - functionName:    opendir
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    readdir
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    closedir
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_os_mkdir
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2679
      functionLinenumberEnd: 2700
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          62
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeCString
        - JS_ToCString
        - JS_ToInt32
        - js_get_errno
        - mkdir
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:2684,13'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:2689,12'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:2696,24'
          Dst:             mkdir
        - Src:             'quickjs-libc.c:2696,11'
          Dst:             js_get_errno
        - Src:             'quickjs-libc.c:2698,5'
          Dst:             JS_FreeCString
    - functionName:    mkdir
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_os_chdir
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2665
      functionLinenumberEnd: 2675
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeCString
        - JS_ToCString
        - chdir
        - js_get_errno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:2669,14'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:2672,24'
          Dst:             chdir
        - Src:             'quickjs-libc.c:2672,11'
          Dst:             js_get_errno
        - Src:             'quickjs-libc.c:2673,5'
          Dst:             JS_FreeCString
    - functionName:    js_os_getcwd
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2650
      functionLinenumberEnd: 2661
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __errno_location
        - getcwd
        - make_string_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:2654,10'
          Dst:             getcwd
        - Src:             'quickjs-libc.c:2656,15'
          Dst:             __errno_location
        - Src:             'quickjs-libc.c:2660,12'
          Dst:             make_string_error
    - functionName:    getcwd
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_os_sleepAsync
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2229
      functionLinenumberEnd: 2256
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          97
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_GetRuntime
        - JS_GetRuntimeOpaque
        - JS_IsException
        - JS_NewPromiseCapability
        - JS_ToInt64
        - get_time_ms
        - js_mallocz
        - list_add_tail
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:2230,21'
          Dst:             JS_GetRuntime
        - Src:             'quickjs-libc.c:2231,25'
          Dst:             JS_GetRuntimeOpaque
        - Src:             'quickjs-libc.c:2236,9'
          Dst:             JS_ToInt64
        - Src:             'quickjs-libc.c:2238,15'
          Dst:             JS_NewPromiseCapability
        - Src:             'quickjs-libc.c:2239,9'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:2242,10'
          Dst:             js_mallocz
        - Src:             'quickjs-libc.c:2244,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:2245,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:2246,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:2250,19'
          Dst:             get_time_ms
        - Src:             'quickjs-libc.c:2251,16'
          Dst:             JS_DupValue
        - Src:             'quickjs-libc.c:2252,5'
          Dst:             list_add_tail
        - Src:             'quickjs-libc.c:2253,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:2254,5'
          Dst:             JS_FreeValue
    - functionName:    get_time_ms
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2126
      functionLinenumberEnd: 2130
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - clock_gettime
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:2128,5'
          Dst:             clock_gettime
    - functionName:    JS_DupValue
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 699
      functionLinenumberEnd: 704
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          22
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    list_add_tail
      functionSourceFile: '/src/quickjs/./list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __list_add
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './list.h:66,5'
          Dst:             __list_add
    - functionName:    js_os_clearTimeout
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2211
      functionLinenumberEnd: 2224
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          42
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_GetRuntime
        - JS_GetRuntimeOpaque
        - JS_ToInt32
        - find_timer_by_id
        - free_timer
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:2212,21'
          Dst:             JS_GetRuntime
        - Src:             'quickjs-libc.c:2213,25'
          Dst:             JS_GetRuntimeOpaque
        - Src:             'quickjs-libc.c:2217,9'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:2219,10'
          Dst:             find_timer_by_id
        - Src:             'quickjs-libc.c:2222,5'
          Dst:             free_timer
    - functionName:    free_timer
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2162
      functionLinenumberEnd: 2166
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_FreeValueRT
        - js_free_rt
        - list_del
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:2163,5'
          Dst:             list_del
        - Src:             'quickjs-libc.c:2164,5'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs-libc.c:2165,5'
          Dst:             js_free_rt
    - functionName:    list_del
      functionSourceFile: '/src/quickjs/./list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_FreeValueRT
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 689
      functionLinenumberEnd: 696
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          35
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - __JS_FreeValueRT
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             './quickjs.h:693,13'
          Dst:             __JS_FreeValueRT
    - functionName:    js_os_setTimeout
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2170
      functionLinenumberEnd: 2194
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          92
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_DupValue
        - JS_GetRuntime
        - JS_GetRuntimeOpaque
        - JS_IsFunction
        - JS_ThrowTypeError
        - JS_ToInt64
        - get_time_ms
        - js_mallocz
        - list_add_tail
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:2171,21'
          Dst:             JS_GetRuntime
        - Src:             'quickjs-libc.c:2172,25'
          Dst:             JS_GetRuntimeOpaque
        - Src:             'quickjs-libc.c:2178,10'
          Dst:             JS_IsFunction
        - Src:             'quickjs-libc.c:2179,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs-libc.c:2180,9'
          Dst:             JS_ToInt64
        - Src:             'quickjs-libc.c:2182,10'
          Dst:             js_mallocz
        - Src:             'quickjs-libc.c:2190,19'
          Dst:             get_time_ms
        - Src:             'quickjs-libc.c:2191,16'
          Dst:             JS_DupValue
        - Src:             'quickjs-libc.c:2192,5'
          Dst:             list_add_tail
    - functionName:    js_os_signal
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2079
      functionLinenumberEnd: 2122
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          154
      EdgeCount:       38
      CyclomaticComplexity: 12
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_GetRuntime
        - JS_GetRuntimeOpaque
        - JS_IsFunction
        - JS_IsNull
        - JS_IsUndefined
        - JS_ThrowRangeError
        - JS_ThrowTypeError
        - JS_ToUint32
        - find_sh
        - free_sh
        - is_main_thread
        - js_mallocz
        - list_add_tail
        - os_signal_handler
        - signal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:2080,21'
          Dst:             JS_GetRuntime
        - Src:             'quickjs-libc.c:2081,25'
          Dst:             JS_GetRuntimeOpaque
        - Src:             'quickjs-libc.c:2087,10'
          Dst:             is_main_thread
        - Src:             'quickjs-libc.c:2088,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs-libc.c:2090,9'
          Dst:             JS_ToUint32
        - Src:             'quickjs-libc.c:2093,16'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs-libc.c:2096,9'
          Dst:             JS_IsNull
        - Src:             'quickjs-libc.c:2096,28'
          Dst:             JS_IsUndefined
        - Src:             'quickjs-libc.c:2097,14'
          Dst:             find_sh
        - Src:             'quickjs-libc.c:2099,21'
          Dst:             JS_GetRuntime
        - Src:             'quickjs-libc.c:2099,13'
          Dst:             free_sh
        - Src:             'quickjs-libc.c:2105,9'
          Dst:             signal
        - Src:             'quickjs-libc.c:2107,14'
          Dst:             JS_IsFunction
        - Src:             'quickjs-libc.c:2108,20'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs-libc.c:2109,14'
          Dst:             find_sh
        - Src:             'quickjs-libc.c:2111,18'
          Dst:             js_mallocz
        - Src:             'quickjs-libc.c:2115,13'
          Dst:             list_add_tail
        - Src:             'quickjs-libc.c:2117,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:2118,20'
          Dst:             JS_DupValue
        - Src:             'quickjs-libc.c:2119,9'
          Dst:             signal
        - Src:             'quickjs-libc.c:2119,9'
          Dst:             os_signal_handler
    - functionName:    JS_IsNull
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 629
      functionLinenumberEnd: 630
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    free_sh
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2062
      functionLinenumberEnd: 2066
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_FreeValueRT
        - js_free_rt
        - list_del
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:2063,5'
          Dst:             list_del
        - Src:             'quickjs-libc.c:2064,5'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs-libc.c:2065,5'
          Dst:             js_free_rt
    - functionName:    signal
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_os_setReadHandler
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2009
      functionLinenumberEnd: 2047
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          148
      EdgeCount:       29
      CyclomaticComplexity: 10
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_GetRuntime
        - JS_GetRuntimeOpaque
        - JS_IsFunction
        - JS_IsNull
        - JS_ThrowTypeError
        - JS_ToInt32
        - find_rh
        - free_rw_handler
        - js_mallocz
        - list_add_tail
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:2010,21'
          Dst:             JS_GetRuntime
        - Src:             'quickjs-libc.c:2011,25'
          Dst:             JS_GetRuntimeOpaque
        - Src:             'quickjs-libc.c:2016,9'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:2019,9'
          Dst:             JS_IsNull
        - Src:             'quickjs-libc.c:2020,14'
          Dst:             find_rh
        - Src:             'quickjs-libc.c:2022,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:2024,17'
          Dst:             JS_IsNull
        - Src:             'quickjs-libc.c:2025,17'
          Dst:             JS_IsNull
        - Src:             'quickjs-libc.c:2027,33'
          Dst:             JS_GetRuntime
        - Src:             'quickjs-libc.c:2027,17'
          Dst:             free_rw_handler
        - Src:             'quickjs-libc.c:2031,14'
          Dst:             JS_IsFunction
        - Src:             'quickjs-libc.c:2032,20'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs-libc.c:2033,14'
          Dst:             find_rh
        - Src:             'quickjs-libc.c:2035,18'
          Dst:             js_mallocz
        - Src:             'quickjs-libc.c:2041,13'
          Dst:             list_add_tail
        - Src:             'quickjs-libc.c:2043,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:2044,30'
          Dst:             JS_DupValue
    - functionName:    free_rw_handler
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1998
      functionLinenumberEnd: 2005
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_FreeValueRT
        - js_free_rt
        - list_del
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:2000,5'
          Dst:             list_del
        - Src:             'quickjs-libc.c:2002,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs-libc.c:2002,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs-libc.c:2004,5'
          Dst:             js_free_rt
    - functionName:    js_os_rename
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1960
      functionLinenumberEnd: 1976
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeCString
        - JS_ToCString
        - js_get_errno
        - rename
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1964,15'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:1967,15'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:1969,9'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:1972,24'
          Dst:             rename
        - Src:             'quickjs-libc.c:1972,11'
          Dst:             js_get_errno
        - Src:             'quickjs-libc.c:1973,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:1974,5'
          Dst:             JS_FreeCString
    - functionName:    rename
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_os_remove
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1934
      functionLinenumberEnd: 1956
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeCString
        - JS_ToCString
        - js_get_errno
        - remove
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1938,16'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:1951,11'
          Dst:             remove
        - Src:             'quickjs-libc.c:1953,11'
          Dst:             js_get_errno
        - Src:             'quickjs-libc.c:1954,5'
          Dst:             JS_FreeCString
    - functionName:    remove
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_os_ttySetRaw
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1904
      functionLinenumberEnd: 1928
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_ToInt32
        - atexit
        - tcgetattr
        - tcsetattr
        - term_exit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1908,9'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:1912,5'
          Dst:             tcgetattr
        - Src:             'quickjs-libc.c:1924,5'
          Dst:             tcsetattr
        - Src:             'quickjs-libc.c:1926,5'
          Dst:             atexit
        - Src:             'quickjs-libc.c:1926,5'
          Dst:             term_exit
    - functionName:    tcgetattr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    atexit
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_os_ttyGetWinSize
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1874
      functionLinenumberEnd: 1892
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          84
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached:
        - JS_DefinePropertyValueUint32
        - JS_IsException
        - JS_NewArray
        - JS_ToInt32
        - ioctl
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1879,9'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:1881,9'
          Dst:             ioctl
        - Src:             'quickjs-libc.c:1883,15'
          Dst:             JS_NewArray
        - Src:             'quickjs-libc.c:1884,13'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:1886,9'
          Dst:             JS_DefinePropertyValueUint32
        - Src:             'quickjs-libc.c:1887,9'
          Dst:             JS_DefinePropertyValueUint32
    - functionName:    ioctl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_os_isatty
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1820
      functionLinenumberEnd: 1825
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_ToInt32
        - isatty
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1822,9'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:1824,28'
          Dst:             isatty
    - functionName:    isatty
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_os_read_write
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1793
      functionLinenumberEnd: 1816
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          129
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - JS_GetArrayBuffer
        - JS_ThrowRangeError
        - JS_ToIndex
        - JS_ToInt32
        - __JS_NewFloat64
        - js_get_errno
        - read
        - write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1800,9'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:1802,9'
          Dst:             JS_ToIndex
        - Src:             'quickjs-libc.c:1804,9'
          Dst:             JS_ToIndex
        - Src:             'quickjs-libc.c:1806,11'
          Dst:             JS_GetArrayBuffer
        - Src:             'quickjs-libc.c:1810,16'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs-libc.c:1812,28'
          Dst:             write
        - Src:             'quickjs-libc.c:1814,28'
          Dst:             read
        - Src:             'quickjs-libc.c:0,0'
          Dst:             js_get_errno
        - Src:             'quickjs-libc.c:1815,12'
          Dst:             __JS_NewFloat64
    - functionName:    write
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    read
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_os_seek
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1770
      functionLinenumberEnd: 1789
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          113
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - JS_IsBigInt
        - JS_NewBigInt64
        - JS_ToInt32
        - JS_ToInt64Ext
        - __JS_NewFloat64
        - __errno_location
        - lseek
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1775,9'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:1777,17'
          Dst:             JS_IsBigInt
        - Src:             'quickjs-libc.c:1778,9'
          Dst:             JS_ToInt64Ext
        - Src:             'quickjs-libc.c:1780,9'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:1782,11'
          Dst:             lseek
        - Src:             'quickjs-libc.c:1784,16'
          Dst:             __errno_location
        - Src:             'quickjs-libc.c:1786,16'
          Dst:             JS_NewBigInt64
        - Src:             'quickjs-libc.c:1788,16'
          Dst:             __JS_NewFloat64
    - functionName:    lseek
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_os_close
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1760
      functionLinenumberEnd: 1766
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_ToInt32
        - close
        - js_get_errno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1762,9'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:1764,24'
          Dst:             close
        - Src:             'quickjs-libc.c:1764,11'
          Dst:             js_get_errno
    - functionName:    js_os_open
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1730
      functionLinenumberEnd: 1756
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          87
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - JS_FreeCString
        - JS_IsUndefined
        - JS_ToCString
        - JS_ToInt32
        - js_get_errno
        - open
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1734,16'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:1737,9'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:1739,23'
          Dst:             JS_IsUndefined
        - Src:             'quickjs-libc.c:1740,13'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:1742,13'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:1753,24'
          Dst:             open
        - Src:             'quickjs-libc.c:1753,11'
          Dst:             js_get_errno
        - Src:             'quickjs-libc.c:1754,5'
          Dst:             JS_FreeCString
    - functionName:    open
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    max_int
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          16
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    list_empty
      functionSourceFile: '/src/quickjs/./list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    call_handler
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2259
      functionLinenumberEnd: 2269
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_Call
        - JS_DupValue
        - JS_FreeValue
        - JS_IsException
        - js_std_dump_error
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:2263,13'
          Dst:             JS_DupValue
        - Src:             'quickjs-libc.c:2264,11'
          Dst:             JS_Call
        - Src:             'quickjs-libc.c:2265,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:2266,9'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:2267,9'
          Dst:             js_std_dump_error
        - Src:             'quickjs-libc.c:2268,5'
          Dst:             JS_FreeValue
    - functionName:    js_std_dump_error
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4178
      functionLinenumberEnd: 4184
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_FreeValue
        - JS_GetException
        - js_std_dump_error1
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:4181,21'
          Dst:             JS_GetException
        - Src:             'quickjs-libc.c:4182,5'
          Dst:             js_std_dump_error1
        - Src:             'quickjs-libc.c:4183,5'
          Dst:             JS_FreeValue
    - functionName:    js_std_dump_error1
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4172
      functionLinenumberEnd: 4175
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_PrintValue
        - fputc
        - js_print_value_write
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:4173,5'
          Dst:             JS_PrintValue
        - Src:             'quickjs-libc.c:4173,5'
          Dst:             js_print_value_write
        - Src:             'quickjs-libc.c:4174,5'
          Dst:             fputc
    - functionName:    js_print_value_write
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1197
      functionLinenumberEnd: 1200
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fwrite
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1199,5'
          Dst:             fwrite
    - functionName:    js_os_poll
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2511
      functionLinenumberEnd: 2620
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         75
      ICount:          418
      EdgeCount:       102
      CyclomaticComplexity: 29
      functionsReached:
        - JS_FreeValue
        - JS_GetRuntime
        - JS_GetRuntimeOpaque
        - JS_IsNull
        - call_handler
        - free_timer
        - get_time_ms
        - list_empty
        - max_int
        - select
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:2512,21'
          Dst:             JS_GetRuntime
        - Src:             'quickjs-libc.c:2513,25'
          Dst:             JS_GetRuntimeOpaque
        - Src:             'quickjs-libc.c:2532,17'
          Dst:             call_handler
        - Src:             'quickjs-libc.c:2538,9'
          Dst:             list_empty
        - Src:             'quickjs-libc.c:2538,44'
          Dst:             list_empty
        - Src:             'quickjs-libc.c:2539,9'
          Dst:             list_empty
        - Src:             'quickjs-libc.c:2542,10'
          Dst:             list_empty
        - Src:             'quickjs-libc.c:2543,20'
          Dst:             get_time_ms
        - Src:             'quickjs-libc.c:2553,17'
          Dst:             free_timer
        - Src:             'quickjs-libc.c:2554,17'
          Dst:             call_handler
        - Src:             'quickjs-libc.c:2555,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:2573,18'
          Dst:             max_int
        - Src:             'quickjs-libc.c:2574,14'
          Dst:             JS_IsNull
        - Src:             'quickjs-libc.c:2576,14'
          Dst:             JS_IsNull
        - Src:             'quickjs-libc.c:2582,14'
          Dst:             JS_IsNull
        - Src:             'quickjs-libc.c:2584,22'
          Dst:             max_int
        - Src:             'quickjs-libc.c:2589,11'
          Dst:             select
        - Src:             'quickjs-libc.c:2593,18'
          Dst:             JS_IsNull
        - Src:             'quickjs-libc.c:2595,17'
          Dst:             call_handler
        - Src:             'quickjs-libc.c:2599,18'
          Dst:             JS_IsNull
        - Src:             'quickjs-libc.c:2601,17'
          Dst:             call_handler
    - functionName:    select
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_set_error_object
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 997
      functionLinenumberEnd: 1001
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          25
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_IsUndefined
        - JS_SetPropertyStr
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:998,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs-libc.c:999,9'
          Dst:             JS_SetPropertyStr
    - functionName:    http_get_status
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1451
      functionLinenumberEnd: 1460
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          58
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - atoi
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1459,12'
          Dst:             atoi
    - functionName:    atoi
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    http_get_header_line
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1430
      functionLinenumberEnd: 1448
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          63
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - dbuf_putc
        - fgetc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1436,13'
          Dst:             fgetc
        - Src:             'quickjs-libc.c:1442,13'
          Dst:             dbuf_putc
    - functionName:    fgetc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dbuf_putc
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 284
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __dbuf_putc
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             './cutils.h:279,16'
          Dst:             __dbuf_putc
    - functionName:    dbuf_error
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 322
      functionLinenumberEnd: 323
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    interrupt_handler
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 854
      functionLinenumberEnd: 855
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_std_file_printObject
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1204
      functionLinenumberEnd: 1206
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_PrintValue
        - js_print_value_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1205,5'
          Dst:             JS_PrintValue
        - Src:             'quickjs-libc.c:1205,5'
          Dst:             js_print_value_write
    - functionName:    js_std_sprintf
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1122
      functionLinenumberEnd: 1123
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_printf_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1123,12'
          Dst:             js_printf_internal
    - functionName:    js_printf_internal
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 173
      functionLinenumberEnd: 559
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         130
      ICount:          643
      EdgeCount:       173
      CyclomaticComplexity: 45
      functionsReached:
        - JS_FreeCString
        - JS_IsString
        - JS_NewStringLen
        - JS_ThrowOutOfMemory
        - JS_ThrowReferenceError
        - JS_ThrowTypeError
        - JS_ToCString
        - JS_ToCStringLen
        - JS_ToFloat64
        - JS_ToInt32
        - JS_ToInt64Ext
        - dbuf_free
        - dbuf_printf
        - dbuf_put
        - dbuf_putc
        - fwrite
        - js_std_dbuf_init
        - my_isdigit
        - snprintf
        - unicode_from_utf8
        - unicode_to_utf8
      functionUses:    3
      BranchProfiles:
        - Branch String:   'quickjs-libc.c:271,13'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs-libc.c:191,5'
          Dst:             js_std_dbuf_init
        - Src:             'quickjs-libc.c:194,19'
          Dst:             JS_ToCStringLen
        - Src:             'quickjs-libc.c:204,13'
          Dst:             dbuf_put
        - Src:             'quickjs-libc.c:204,13'
          Dst:             dbuf_put
        - Src:             'quickjs-libc.c:232,24'
          Dst:             my_isdigit
        - Src:             'quickjs-libc.c:227,21'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:229,22'
          Dst:             snprintf
        - Src:             'quickjs-libc.c:232,24'
          Dst:             my_isdigit
        - Src:             'quickjs-libc.c:250,28'
          Dst:             my_isdigit
        - Src:             'quickjs-libc.c:245,25'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:247,26'
          Dst:             snprintf
        - Src:             'quickjs-libc.c:250,28'
          Dst:             my_isdigit
        - Src:             'quickjs-libc.c:275,21'
          Dst:             JS_IsString
        - Src:             'quickjs-libc.c:276,34'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:279,33'
          Dst:             unicode_from_utf8
        - Src:             'quickjs-libc.c:280,21'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:282,25'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:289,23'
          Dst:             unicode_to_utf8
        - Src:             'quickjs-libc.c:290,17'
          Dst:             dbuf_put
        - Src:             'quickjs-libc.c:301,21'
          Dst:             JS_ToInt64Ext
        - Src:             'quickjs-libc.c:320,21'
          Dst:             dbuf_printf
        - Src:             'quickjs-libc.c:323,21'
          Dst:             dbuf_printf
        - Src:             'quickjs-libc.c:331,30'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:334,17'
          Dst:             dbuf_printf
        - Src:             'quickjs-libc.c:335,17'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:348,21'
          Dst:             JS_ToFloat64
        - Src:             'quickjs-libc.c:350,17'
          Dst:             dbuf_printf
        - Src:             'quickjs-libc.c:354,17'
          Dst:             dbuf_putc
        - Src:             'quickjs-libc.c:360,17'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs-libc.c:363,17'
          Dst:             JS_ThrowReferenceError
        - Src:             'quickjs-libc.c:367,9'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:370,15'
          Dst:             JS_ThrowOutOfMemory
        - Src:             'quickjs-libc.c:373,19'
          Dst:             fwrite
        - Src:             'quickjs-libc.c:376,19'
          Dst:             JS_NewStringLen
        - Src:             'quickjs-libc.c:383,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:0,0'
          Dst:             dbuf_free
    - functionName:    js_std_dbuf_init
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_GetRuntime
        - dbuf_init2
        - js_realloc_rt
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:162,19'
          Dst:             JS_GetRuntime
        - Src:             'quickjs-libc.c:162,5'
          Dst:             dbuf_init2
        - Src:             'quickjs-libc.c:162,5'
          Dst:             js_realloc_rt
    - functionName:    JS_ToCStringLen
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 744
      functionLinenumberEnd: 745
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_ToCStringLen2
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             './quickjs.h:745,12'
          Dst:             JS_ToCStringLen2
    - functionName:    my_isdigit
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          19
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    JS_IsString
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 649
      functionLinenumberEnd: 651
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_std_printf
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1128
      functionLinenumberEnd: 1129
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - js_printf_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1129,12'
          Dst:             js_printf_internal
    - functionName:    js_std_tmpfile
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1110
      functionLinenumberEnd: 1118
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          54
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - js_new_std_file
        - js_set_error_object
        - tmpfile
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1112,9'
          Dst:             tmpfile
        - Src:             'quickjs-libc.c:1114,51'
          Dst:             __errno_location
        - Src:             'quickjs-libc.c:1114,9'
          Dst:             js_set_error_object
        - Src:             'quickjs-libc.c:1117,12'
          Dst:             js_new_std_file
    - functionName:    tmpfile
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_new_std_file
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 978
      functionLinenumberEnd: 994
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          50
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeValue
        - JS_IsException
        - JS_NewObjectClass
        - JS_SetOpaque
        - js_mallocz
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:981,11'
          Dst:             JS_NewObjectClass
        - Src:             'quickjs-libc.c:982,9'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:984,9'
          Dst:             js_mallocz
        - Src:             'quickjs-libc.c:986,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:992,5'
          Dst:             JS_SetOpaque
    - functionName:    js_std_fdopen
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1077
      functionLinenumberEnd: 1106
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          101
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - JS_FreeCString
        - JS_ThrowTypeError
        - JS_ToCString
        - JS_ToInt32
        - __errno_location
        - fdopen
        - js_new_std_file
        - js_set_error_object
        - strspn
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1082,9'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:1084,12'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:1087,14'
          Dst:             strspn
        - Src:             'quickjs-libc.c:1088,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs-libc.c:1092,9'
          Dst:             fdopen
        - Src:             'quickjs-libc.c:1094,15'
          Dst:             __errno_location
        - Src:             'quickjs-libc.c:1098,9'
          Dst:             js_set_error_object
        - Src:             'quickjs-libc.c:1099,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:1102,12'
          Dst:             js_new_std_file
        - Src:             'quickjs-libc.c:1104,5'
          Dst:             JS_FreeCString
    - functionName:    strspn
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fdopen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_std_popen
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1041
      functionLinenumberEnd: 1073
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          99
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - JS_FreeCString
        - JS_ThrowTypeError
        - JS_ToCString
        - __errno_location
        - js_new_std_file
        - js_set_error_object
        - popen
        - strspn
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1046,16'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:1049,12'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:1052,14'
          Dst:             strspn
        - Src:             'quickjs-libc.c:1053,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs-libc.c:1057,9'
          Dst:             popen
        - Src:             'quickjs-libc.c:1059,15'
          Dst:             __errno_location
        - Src:             'quickjs-libc.c:1063,9'
          Dst:             js_set_error_object
        - Src:             'quickjs-libc.c:1064,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:1065,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:1068,12'
          Dst:             js_new_std_file
        - Src:             'quickjs-libc.c:1070,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:1071,5'
          Dst:             JS_FreeCString
    - functionName:    popen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_std_open
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1005
      functionLinenumberEnd: 1037
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          99
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - JS_FreeCString
        - JS_ThrowTypeError
        - JS_ToCString
        - __errno_location
        - fopen
        - js_new_std_file
        - js_set_error_object
        - strspn
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1010,16'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:1013,12'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:1016,14'
          Dst:             strspn
        - Src:             'quickjs-libc.c:1017,9'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs-libc.c:1021,9'
          Dst:             fopen
        - Src:             'quickjs-libc.c:1023,15'
          Dst:             __errno_location
        - Src:             'quickjs-libc.c:1027,9'
          Dst:             js_set_error_object
        - Src:             'quickjs-libc.c:1028,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:1029,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:1032,12'
          Dst:             js_new_std_file
        - Src:             'quickjs-libc.c:1034,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:1035,5'
          Dst:             JS_FreeCString
    - functionName:    fopen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_std_parseExtJSON
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 962
      functionLinenumberEnd: 973
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeCString
        - JS_ParseJSON2
        - JS_ToCStringLen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:967,11'
          Dst:             JS_ToCStringLen
        - Src:             'quickjs-libc.c:970,11'
          Dst:             JS_ParseJSON2
        - Src:             'quickjs-libc.c:971,5'
          Dst:             JS_FreeCString
    - functionName:    js_std_strerror
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 953
      functionLinenumberEnd: 958
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_NewString
        - JS_ToInt32
        - strerror
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:955,9'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:957,30'
          Dst:             strerror
        - Src:             'quickjs-libc.c:957,12'
          Dst:             JS_NewString
    - functionName:    strerror
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_std_loadFile
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          49
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeCString
        - JS_NewStringLen
        - JS_ToCString
        - js_free
        - js_load_file
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:467,16'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:470,11'
          Dst:             js_load_file
        - Src:             'quickjs-libc.c:471,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:474,11'
          Dst:             JS_NewStringLen
        - Src:             'quickjs-libc.c:475,5'
          Dst:             js_free
    - functionName:    js_load_file
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 389
      functionLinenumberEnd: 431
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          100
      EdgeCount:       33
      CyclomaticComplexity: 11
      functionsReached:
        - __errno_location
        - fclose
        - fopen
        - fread
        - fseek
        - ftell
        - js_free
        - js_malloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:395,9'
          Dst:             fopen
        - Src:             'quickjs-libc.c:398,9'
          Dst:             fseek
        - Src:             'quickjs-libc.c:400,12'
          Dst:             ftell
        - Src:             'quickjs-libc.c:405,9'
          Dst:             __errno_location
        - Src:             'quickjs-libc.c:409,9'
          Dst:             fseek
        - Src:             'quickjs-libc.c:412,15'
          Dst:             js_malloc
        - Src:             'quickjs-libc.c:417,9'
          Dst:             fread
        - Src:             'quickjs-libc.c:418,9'
          Dst:             __errno_location
        - Src:             'quickjs-libc.c:420,13'
          Dst:             js_free
        - Src:             'quickjs-libc.c:424,9'
          Dst:             fclose
        - Src:             'quickjs-libc.c:428,5'
          Dst:             fclose
    - functionName:    fseek
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ftell
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fread
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fclose
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_std_urlGet
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1464
      functionLinenumberEnd: 1616
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         68
      ICount:          354
      EdgeCount:       88
      CyclomaticComplexity: 22
      functionsReached:
        - JS_DefinePropertyValueStr
        - JS_FreeCString
        - JS_FreeValue
        - JS_IsException
        - JS_IsNull
        - JS_NewArrayBufferCopy
        - JS_NewObject
        - JS_NewStringLen
        - JS_ThrowTypeError
        - JS_ToCString
        - dbuf_error
        - dbuf_free
        - dbuf_printf
        - dbuf_put
        - dbuf_putc
        - dbuf_putstr
        - fread
        - get_bool_option
        - http_get_header_line
        - http_get_status
        - js_free
        - js_malloc
        - js_std_dbuf_init
        - pclose
        - popen
        - strcmp
      functionUses:    0
      BranchProfiles:
        - Branch String:   'quickjs-libc.c:1499,5'
          Branch Sides:    []
      Callsites:
        - Src:             'quickjs-libc.c:1477,11'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:1487,13'
          Dst:             get_bool_option
        - Src:             'quickjs-libc.c:1490,13'
          Dst:             get_bool_option
        - Src:             'quickjs-libc.c:1492,13'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:1497,5'
          Dst:             js_std_dbuf_init
        - Src:             'quickjs-libc.c:1498,5'
          Dst:             dbuf_printf
        - Src:             'quickjs-libc.c:1504,13'
          Dst:             dbuf_putstr
        - Src:             'quickjs-libc.c:1508,13'
          Dst:             dbuf_putc
        - Src:             'quickjs-libc.c:1511,13'
          Dst:             dbuf_putc
        - Src:             'quickjs-libc.c:1515,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:1516,5'
          Dst:             dbuf_putstr
        - Src:             'quickjs-libc.c:1517,5'
          Dst:             dbuf_putc
        - Src:             'quickjs-libc.c:1518,9'
          Dst:             dbuf_error
        - Src:             'quickjs-libc.c:1519,9'
          Dst:             dbuf_free
        - Src:             'quickjs-libc.c:1523,9'
          Dst:             popen
        - Src:             'quickjs-libc.c:1524,5'
          Dst:             dbuf_free
        - Src:             'quickjs-libc.c:1526,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs-libc.c:1529,5'
          Dst:             js_std_dbuf_init
        - Src:             'quickjs-libc.c:1530,5'
          Dst:             js_std_dbuf_init
        - Src:             'quickjs-libc.c:1532,11'
          Dst:             js_malloc
        - Src:             'quickjs-libc.c:1537,9'
          Dst:             http_get_header_line
        - Src:             'quickjs-libc.c:1541,14'
          Dst:             http_get_status
        - Src:             'quickjs-libc.c:1548,13'
          Dst:             http_get_header_line
        - Src:             'quickjs-libc.c:1553,14'
          Dst:             strcmp
        - Src:             'quickjs-libc.c:1556,9'
          Dst:             dbuf_error
        - Src:             'quickjs-libc.c:1562,15'
          Dst:             fread
        - Src:             'quickjs-libc.c:1565,9'
          Dst:             dbuf_put
        - Src:             'quickjs-libc.c:1567,9'
          Dst:             dbuf_error
        - Src:             'quickjs-libc.c:1570,20'
          Dst:             JS_NewArrayBufferCopy
        - Src:             'quickjs-libc.c:1573,20'
          Dst:             JS_NewStringLen
        - Src:             'quickjs-libc.c:1575,9'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:1578,5'
          Dst:             js_free
        - Src:             'quickjs-libc.c:1580,5'
          Dst:             pclose
        - Src:             'quickjs-libc.c:1582,5'
          Dst:             dbuf_free
        - Src:             'quickjs-libc.c:1586,19'
          Dst:             JS_NewObject
        - Src:             'quickjs-libc.c:1587,13'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:1609,5'
          Dst:             js_free
        - Src:             'quickjs-libc.c:1589,9'
          Dst:             JS_DefinePropertyValueStr
        - Src:             'quickjs-libc.c:1592,14'
          Dst:             JS_IsNull
        - Src:             'quickjs-libc.c:1594,39'
          Dst:             JS_NewStringLen
        - Src:             'quickjs-libc.c:1593,13'
          Dst:             JS_DefinePropertyValueStr
        - Src:             'quickjs-libc.c:1597,13'
          Dst:             JS_DefinePropertyValueStr
        - Src:             'quickjs-libc.c:1604,5'
          Dst:             dbuf_free
        - Src:             'quickjs-libc.c:1608,9'
          Dst:             pclose
        - Src:             'quickjs-libc.c:1609,5'
          Dst:             js_free
        - Src:             'quickjs-libc.c:1611,9'
          Dst:             dbuf_free
        - Src:             'quickjs-libc.c:1613,9'
          Dst:             dbuf_free
        - Src:             'quickjs-libc.c:1614,5'
          Dst:             JS_FreeValue
    - functionName:    pclose
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_std_getenviron
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 811
      functionLinenumberEnd: 844
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          93
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - JS_DefinePropertyValue
        - JS_FreeAtom
        - JS_FreeValue
        - JS_IsException
        - JS_NewAtomLen
        - JS_NewObject
        - JS_NewString
        - strchr
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:820,11'
          Dst:             JS_NewObject
        - Src:             'quickjs-libc.c:821,9'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:826,13'
          Dst:             strchr
        - Src:             'quickjs-libc.c:831,16'
          Dst:             JS_NewAtomLen
        - Src:             'quickjs-libc.c:834,54'
          Dst:             JS_NewString
        - Src:             'quickjs-libc.c:834,15'
          Dst:             JS_DefinePropertyValue
        - Src:             'quickjs-libc.c:836,9'
          Dst:             JS_FreeAtom
        - Src:             'quickjs-libc.c:842,5'
          Dst:             JS_FreeValue
    - functionName:    js_std_unsetenv
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 797
      functionLinenumberEnd: 805
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_FreeCString
        - JS_ToCString
        - unsetenv
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:799,12'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:802,5'
          Dst:             unsetenv
        - Src:             'quickjs-libc.c:803,5'
          Dst:             JS_FreeCString
    - functionName:    unsetenv
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_std_setenv
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 779
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          44
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeCString
        - JS_ToCString
        - setenv
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:781,12'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:784,13'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:789,5'
          Dst:             setenv
        - Src:             'quickjs-libc.c:790,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:0,0'
          Dst:             JS_FreeCString
    - functionName:    setenv
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_std_getenv
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 742
      functionLinenumberEnd: 753
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          44
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_FreeCString
        - JS_NewString
        - JS_ToCString
        - getenv
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:744,12'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:747,11'
          Dst:             getenv
        - Src:             'quickjs-libc.c:748,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:752,16'
          Dst:             JS_NewString
    - functionName:    js_evalScript
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 875
      functionLinenumberEnd: 920
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          167
      EdgeCount:       42
      CyclomaticComplexity: 13
      functionsReached:
        - JS_Eval
        - JS_FreeCString
        - JS_GetRuntime
        - JS_GetRuntimeOpaque
        - JS_IsException
        - JS_SetInterruptHandler
        - JS_SetUncatchableException
        - JS_ToCStringLen
        - get_bool_option
        - interrupt_handler
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:876,21'
          Dst:             JS_GetRuntime
        - Src:             'quickjs-libc.c:877,25'
          Dst:             JS_GetRuntimeOpaque
        - Src:             'quickjs-libc.c:888,13'
          Dst:             get_bool_option
        - Src:             'quickjs-libc.c:891,13'
          Dst:             get_bool_option
        - Src:             'quickjs-libc.c:896,11'
          Dst:             JS_ToCStringLen
        - Src:             'quickjs-libc.c:901,32'
          Dst:             JS_GetRuntime
        - Src:             'quickjs-libc.c:901,9'
          Dst:             JS_SetInterruptHandler
        - Src:             'quickjs-libc.c:901,9'
          Dst:             interrupt_handler
        - Src:             'quickjs-libc.c:908,11'
          Dst:             JS_Eval
        - Src:             'quickjs-libc.c:909,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:912,32'
          Dst:             JS_GetRuntime
        - Src:             'quickjs-libc.c:912,9'
          Dst:             JS_SetInterruptHandler
        - Src:             'quickjs-libc.c:916,13'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:917,13'
          Dst:             JS_SetUncatchableException
    - functionName:    js_std_gc
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 848
      functionLinenumberEnd: 850
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_GetRuntime
        - JS_RunGC
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:849,14'
          Dst:             JS_GetRuntime
        - Src:             'quickjs-libc.c:849,5'
          Dst:             JS_RunGC
    - functionName:    js_std_exit
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 732
      functionLinenumberEnd: 736
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_ToInt32
        - exit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:734,9'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:736,5'
          Dst:             exit
    - functionName:    exit
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_std_file_get
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1133
      functionLinenumberEnd: 1142
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          32
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_GetOpaque2
        - JS_ThrowTypeError
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1134,20'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs-libc.c:1138,9'
          Dst:             JS_ThrowTypeError
    - functionName:    js_std_file_putByte
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1412
      functionLinenumberEnd: 1421
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          43
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_ToInt32
        - fputc
        - js_std_file_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1413,15'
          Dst:             js_std_file_get
        - Src:             'quickjs-libc.c:1417,9'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:1419,9'
          Dst:             fputc
    - functionName:    js_std_file_getByte
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1403
      functionLinenumberEnd: 1408
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fgetc
        - js_std_file_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1404,15'
          Dst:             js_std_file_get
        - Src:             'quickjs-libc.c:1407,29'
          Dst:             fgetc
    - functionName:    js_std_file_readAsString
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1361
      functionLinenumberEnd: 1399
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          126
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - JS_IsUndefined
        - JS_NewStringLen
        - JS_ToIndex
        - dbuf_free
        - dbuf_putc
        - fgetc
        - js_std_dbuf_init
        - js_std_file_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1362,15'
          Dst:             js_std_file_get
        - Src:             'quickjs-libc.c:1378,10'
          Dst:             JS_IsUndefined
        - Src:             'quickjs-libc.c:1379,13'
          Dst:             JS_ToIndex
        - Src:             'quickjs-libc.c:1385,5'
          Dst:             js_std_dbuf_init
        - Src:             'quickjs-libc.c:1385,5'
          Dst:             js_std_dbuf_init
        - Src:             'quickjs-libc.c:1387,13'
          Dst:             fgetc
        - Src:             'quickjs-libc.c:1390,13'
          Dst:             dbuf_putc
        - Src:             'quickjs-libc.c:1391,13'
          Dst:             dbuf_free
        - Src:             'quickjs-libc.c:1396,11'
          Dst:             JS_NewStringLen
        - Src:             'quickjs-libc.c:1397,5'
          Dst:             dbuf_free
    - functionName:    js_std_file_getline
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1325
      functionLinenumberEnd: 1356
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          82
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - JS_NewStringLen
        - JS_ThrowOutOfMemory
        - dbuf_free
        - dbuf_putc
        - fgetc
        - js_std_dbuf_init
        - js_std_file_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1326,15'
          Dst:             js_std_file_get
        - Src:             'quickjs-libc.c:1334,5'
          Dst:             js_std_dbuf_init
        - Src:             'quickjs-libc.c:1336,13'
          Dst:             fgetc
        - Src:             'quickjs-libc.c:1340,17'
          Dst:             dbuf_free
        - Src:             'quickjs-libc.c:1348,13'
          Dst:             dbuf_putc
        - Src:             'quickjs-libc.c:1349,13'
          Dst:             dbuf_free
        - Src:             'quickjs-libc.c:1350,20'
          Dst:             JS_ThrowOutOfMemory
        - Src:             'quickjs-libc.c:1353,11'
          Dst:             JS_NewStringLen
        - Src:             'quickjs-libc.c:1354,5'
          Dst:             dbuf_free
    - functionName:    js_std_file_read_write
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1298
      functionLinenumberEnd: 1320
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          118
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - JS_GetArrayBuffer
        - JS_ThrowRangeError
        - JS_ToIndex
        - __JS_NewFloat64
        - fread
        - fwrite
        - js_std_file_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1299,15'
          Dst:             js_std_file_get
        - Src:             'quickjs-libc.c:1306,9'
          Dst:             JS_ToIndex
        - Src:             'quickjs-libc.c:1308,9'
          Dst:             JS_ToIndex
        - Src:             'quickjs-libc.c:1310,11'
          Dst:             JS_GetArrayBuffer
        - Src:             'quickjs-libc.c:1314,16'
          Dst:             JS_ThrowRangeError
        - Src:             'quickjs-libc.c:1316,15'
          Dst:             fwrite
        - Src:             'quickjs-libc.c:1318,15'
          Dst:             fread
        - Src:             'quickjs-libc.c:1319,12'
          Dst:             __JS_NewFloat64
    - functionName:    js_std_file_clearerr
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1279
      functionLinenumberEnd: 1285
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          25
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - clearerr
        - js_std_file_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1280,15'
          Dst:             js_std_file_get
        - Src:             'quickjs-libc.c:1283,5'
          Dst:             clearerr
    - functionName:    clearerr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_std_file_error
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1270
      functionLinenumberEnd: 1275
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ferror
        - js_std_file_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1271,15'
          Dst:             js_std_file_get
        - Src:             'quickjs-libc.c:1274,28'
          Dst:             ferror
    - functionName:    ferror
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_std_file_fileno
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1289
      functionLinenumberEnd: 1294
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fileno
        - js_std_file_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1290,15'
          Dst:             js_std_file_get
        - Src:             'quickjs-libc.c:1293,29'
          Dst:             fileno
    - functionName:    fileno
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_std_file_eof
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1261
      functionLinenumberEnd: 1266
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - feof
        - js_std_file_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1262,15'
          Dst:             js_std_file_get
        - Src:             'quickjs-libc.c:1265,28'
          Dst:             feof
    - functionName:    feof
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_std_file_seek
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1239
      functionLinenumberEnd: 1257
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          71
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_ToInt32
        - JS_ToInt64Ext
        - __errno_location
        - fseeko
        - js_std_file_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1240,15'
          Dst:             js_std_file_get
        - Src:             'quickjs-libc.c:1245,9'
          Dst:             JS_ToInt64Ext
        - Src:             'quickjs-libc.c:1247,9'
          Dst:             JS_ToInt32
        - Src:             'quickjs-libc.c:1250,11'
          Dst:             fseeko
        - Src:             'quickjs-libc.c:1255,16'
          Dst:             __errno_location
    - functionName:    fseeko
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_std_file_tell
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1221
      functionLinenumberEnd: 1235
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          56
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_NewBigInt64
        - __JS_NewFloat64
        - ftello
        - js_std_file_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1222,15'
          Dst:             js_std_file_get
        - Src:             'quickjs-libc.c:1227,11'
          Dst:             ftello
        - Src:             'quickjs-libc.c:1232,16'
          Dst:             JS_NewBigInt64
        - Src:             'quickjs-libc.c:1234,16'
          Dst:             __JS_NewFloat64
    - functionName:    ftello
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_std_file_flush
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1211
      functionLinenumberEnd: 1217
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          25
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fflush
        - js_std_file_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1212,15'
          Dst:             js_std_file_get
        - Src:             'quickjs-libc.c:1215,5'
          Dst:             fflush
    - functionName:    fflush
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_std_file_printf
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1189
      functionLinenumberEnd: 1194
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - js_printf_internal
        - js_std_file_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1190,15'
          Dst:             js_std_file_get
        - Src:             'quickjs-libc.c:1193,12'
          Dst:             js_printf_internal
    - functionName:    js_std_file_puts
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1146
      functionLinenumberEnd: 1168
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          71
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - JS_FreeCString
        - JS_ToCStringLen
        - fwrite
        - js_std_file_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1155,13'
          Dst:             js_std_file_get
        - Src:             'quickjs-libc.c:1161,15'
          Dst:             JS_ToCStringLen
        - Src:             'quickjs-libc.c:1164,9'
          Dst:             fwrite
        - Src:             'quickjs-libc.c:1165,9'
          Dst:             JS_FreeCString
    - functionName:    js_std_file_close
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1172
      functionLinenumberEnd: 1185
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          58
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_GetOpaque2
        - JS_ThrowTypeError
        - fclose
        - js_get_errno
        - pclose
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1173,20'
          Dst:             JS_GetOpaque2
        - Src:             'quickjs-libc.c:1178,16'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs-libc.c:1180,28'
          Dst:             pclose
        - Src:             'quickjs-libc.c:1182,28'
          Dst:             fclose
        - Src:             'quickjs-libc.c:0,0'
          Dst:             js_get_errno
    - functionName:    js_std_file_finalizer
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 931
      functionLinenumberEnd: 942
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          52
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - JS_GetOpaque
        - fclose
        - js_free_rt
        - pclose
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:932,20'
          Dst:             JS_GetOpaque
        - Src:             'quickjs-libc.c:936,17'
          Dst:             pclose
        - Src:             'quickjs-libc.c:938,17'
          Dst:             fclose
        - Src:             'quickjs-libc.c:940,9'
          Dst:             js_free_rt
    - functionName:    json_module_init
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 595
      functionLinenumberEnd: 599
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_GetModulePrivateValue
        - JS_SetModuleExport
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:597,11'
          Dst:             JS_GetModulePrivateValue
        - Src:             'quickjs-libc.c:598,5'
          Dst:             JS_SetModuleExport
    - functionName:    js_std_eval_binary_json_module
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4348
      functionLinenumberEnd: 4361
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          35
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - JS_IsException
        - JS_ReadObject
        - create_json_module
        - exit
        - js_std_dump_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:4352,11'
          Dst:             JS_ReadObject
        - Src:             'quickjs-libc.c:4353,9'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:4355,9'
          Dst:             create_json_module
        - Src:             'quickjs-libc.c:4358,9'
          Dst:             js_std_dump_error
        - Src:             'quickjs-libc.c:4359,9'
          Dst:             exit
    - functionName:    create_json_module
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 603
      functionLinenumberEnd: 614
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          25
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_AddModuleExport
        - JS_FreeValue
        - JS_NewCModule
        - JS_SetModulePrivateValue
        - json_module_init
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:605,9'
          Dst:             JS_NewCModule
        - Src:             'quickjs-libc.c:605,9'
          Dst:             json_module_init
        - Src:             'quickjs-libc.c:607,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:611,5'
          Dst:             JS_AddModuleExport
        - Src:             'quickjs-libc.c:612,5'
          Dst:             JS_SetModulePrivateValue
    - functionName:    js_std_eval_binary
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4314
      functionLinenumberEnd: 4343
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          86
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - JS_EvalFunction
        - JS_FreeValue
        - JS_IsException
        - JS_ReadObject
        - JS_ResolveModule
        - exit
        - js_module_set_import_meta
        - js_std_await
        - js_std_dump_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:4316,11'
          Dst:             JS_ReadObject
        - Src:             'quickjs-libc.c:4317,9'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:4321,13'
          Dst:             js_module_set_import_meta
        - Src:             'quickjs-libc.c:4323,9'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:4326,17'
          Dst:             JS_ResolveModule
        - Src:             'quickjs-libc.c:4327,17'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:4330,13'
          Dst:             js_module_set_import_meta
        - Src:             'quickjs-libc.c:4331,19'
          Dst:             JS_EvalFunction
        - Src:             'quickjs-libc.c:4332,19'
          Dst:             js_std_await
        - Src:             'quickjs-libc.c:4334,19'
          Dst:             JS_EvalFunction
        - Src:             'quickjs-libc.c:4336,13'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:4338,13'
          Dst:             js_std_dump_error
        - Src:             'quickjs-libc.c:4339,13'
          Dst:             exit
        - Src:             'quickjs-libc.c:4341,9'
          Dst:             JS_FreeValue
    - functionName:    js_module_set_import_meta
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 543
      functionLinenumberEnd: 592
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          91
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - JS_AtomToCString
        - JS_DefinePropertyValueStr
        - JS_FreeAtom
        - JS_FreeCString
        - JS_FreeValue
        - JS_GetImportMeta
        - JS_GetModuleName
        - JS_IsException
        - JS_NewString
        - JS_ThrowTypeError
        - __assert_fail
        - pstrcat
        - pstrcpy
        - realpath
        - strchr
        - strlen
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:550,5'
          Dst:             __assert_fail
        - Src:             'quickjs-libc.c:553,24'
          Dst:             JS_GetModuleName
        - Src:             'quickjs-libc.c:554,19'
          Dst:             JS_AtomToCString
        - Src:             'quickjs-libc.c:555,5'
          Dst:             JS_FreeAtom
        - Src:             'quickjs-libc.c:558,10'
          Dst:             strchr
        - Src:             'quickjs-libc.c:565,53'
          Dst:             strlen
        - Src:             'quickjs-libc.c:565,25'
          Dst:             realpath
        - Src:             'quickjs-libc.c:567,17'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs-libc.c:568,17'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:574,13'
          Dst:             pstrcat
        - Src:             'quickjs-libc.c:577,9'
          Dst:             pstrcpy
        - Src:             'quickjs-libc.c:579,5'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:581,16'
          Dst:             JS_GetImportMeta
        - Src:             'quickjs-libc.c:582,9'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:585,31'
          Dst:             JS_NewString
        - Src:             'quickjs-libc.c:584,5'
          Dst:             JS_DefinePropertyValueStr
        - Src:             'quickjs-libc.c:587,5'
          Dst:             JS_DefinePropertyValueStr
        - Src:             'quickjs-libc.c:590,5'
          Dst:             JS_FreeValue
    - functionName:    js_std_await
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4277
      functionLinenumberEnd: 4310
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          75
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - JS_ExecutePendingJob
        - JS_FreeValue
        - JS_GetRuntime
        - JS_PromiseResult
        - JS_PromiseState
        - JS_Throw
        - js_os_poll
        - js_std_dump_error
        - js_std_promise_rejection_check
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:4282,17'
          Dst:             JS_PromiseState
        - Src:             'quickjs-libc.c:4284,19'
          Dst:             JS_PromiseResult
        - Src:             'quickjs-libc.c:4285,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:4288,33'
          Dst:             JS_PromiseResult
        - Src:             'quickjs-libc.c:4288,19'
          Dst:             JS_Throw
        - Src:             'quickjs-libc.c:4289,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:4293,40'
          Dst:             JS_GetRuntime
        - Src:             'quickjs-libc.c:4293,19'
          Dst:             JS_ExecutePendingJob
        - Src:             'quickjs-libc.c:4295,17'
          Dst:             js_std_dump_error
        - Src:             'quickjs-libc.c:4298,17'
          Dst:             js_std_promise_rejection_check
        - Src:             'quickjs-libc.c:4301,21'
          Dst:             js_os_poll
    - functionName:    js_std_promise_rejection_check
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4235
      functionLinenumberEnd: 4248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          52
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - JS_GetRuntime
        - JS_GetRuntimeOpaque
        - exit
        - fwrite
        - js_std_dump_error1
        - list_empty
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:4236,21'
          Dst:             JS_GetRuntime
        - Src:             'quickjs-libc.c:4237,25'
          Dst:             JS_GetRuntimeOpaque
        - Src:             'quickjs-libc.c:4240,9'
          Dst:             list_empty
        - Src:             'quickjs-libc.c:4243,13'
          Dst:             fwrite
        - Src:             'quickjs-libc.c:4244,13'
          Dst:             js_std_dump_error1
        - Src:             'quickjs-libc.c:4246,9'
          Dst:             exit
    - functionName:    js_std_loop
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4252
      functionLinenumberEnd: 4271
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          54
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - JS_ExecutePendingJob
        - JS_GetRuntime
        - js_os_poll
        - js_std_dump_error
        - js_std_promise_rejection_check
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:4258,40'
          Dst:             JS_GetRuntime
        - Src:             'quickjs-libc.c:4258,19'
          Dst:             JS_ExecutePendingJob
        - Src:             'quickjs-libc.c:4261,21'
          Dst:             js_std_dump_error
        - Src:             'quickjs-libc.c:4266,9'
          Dst:             js_std_promise_rejection_check
        - Src:             'quickjs-libc.c:4268,30'
          Dst:             js_os_poll
    - functionName:    find_rejected_promise
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4188
      functionLinenumberEnd: 4197
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          47
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - JS_SameValue
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:4193,13'
          Dst:             JS_SameValue
    - functionName:    js_std_promise_rejection_tracker
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4202
      functionLinenumberEnd: 4228
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          73
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - JS_DupValue
        - JS_FreeValue
        - JS_GetRuntime
        - JS_GetRuntimeOpaque
        - find_rejected_promise
        - list_add_tail
        - list_del
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:4203,21'
          Dst:             JS_GetRuntime
        - Src:             'quickjs-libc.c:4204,25'
          Dst:             JS_GetRuntimeOpaque
        - Src:             'quickjs-libc.c:4209,14'
          Dst:             find_rejected_promise
        - Src:             'quickjs-libc.c:4213,31'
          Dst:             JS_DupValue
        - Src:             'quickjs-libc.c:4214,30'
          Dst:             JS_DupValue
        - Src:             'quickjs-libc.c:4215,17'
          Dst:             list_add_tail
        - Src:             'quickjs-libc.c:4220,14'
          Dst:             find_rejected_promise
        - Src:             'quickjs-libc.c:4222,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:4223,13'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:4224,13'
          Dst:             list_del
    - functionName:    js_std_free_handlers
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4129
      functionLinenumberEnd: 4169
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         27
      ICount:          119
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - JS_FreeValueRT
        - JS_GetRuntimeOpaque
        - JS_SetRuntimeOpaque
        - free_rw_handler
        - free_sh
        - free_timer
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:4130,25'
          Dst:             JS_GetRuntimeOpaque
        - Src:             'quickjs-libc.c:4135,9'
          Dst:             free_rw_handler
        - Src:             'quickjs-libc.c:4140,9'
          Dst:             free_sh
        - Src:             'quickjs-libc.c:4145,9'
          Dst:             free_timer
        - Src:             'quickjs-libc.c:4150,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs-libc.c:4151,9'
          Dst:             JS_FreeValueRT
        - Src:             'quickjs-libc.c:4168,5'
          Dst:             JS_SetRuntimeOpaque
    - functionName:    init_list_head
      functionSourceFile: '/src/quickjs/./list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_std_init_handlers
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4097
      functionLinenumberEnd: 4126
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          36
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - JS_SetRuntimeOpaque
        - calloc
        - exit
        - fwrite
        - init_list_head
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:4100,10'
          Dst:             calloc
        - Src:             'quickjs-libc.c:4102,9'
          Dst:             fwrite
        - Src:             'quickjs-libc.c:4103,9'
          Dst:             exit
        - Src:             'quickjs-libc.c:4106,5'
          Dst:             init_list_head
        - Src:             'quickjs-libc.c:4107,5'
          Dst:             init_list_head
        - Src:             'quickjs-libc.c:4108,5'
          Dst:             init_list_head
        - Src:             'quickjs-libc.c:4109,5'
          Dst:             init_list_head
        - Src:             'quickjs-libc.c:4110,5'
          Dst:             init_list_head
        - Src:             'quickjs-libc.c:4113,5'
          Dst:             JS_SetRuntimeOpaque
    - functionName:    calloc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_loadScript
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 436
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - JS_Eval
        - JS_FreeCString
        - JS_ThrowReferenceError
        - JS_ToCString
        - js_free
        - js_load_file
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:442,16'
          Dst:             JS_ToCString
        - Src:             'quickjs-libc.c:445,11'
          Dst:             js_load_file
        - Src:             'quickjs-libc.c:447,9'
          Dst:             JS_ThrowReferenceError
        - Src:             'quickjs-libc.c:448,9'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:451,11'
          Dst:             JS_Eval
        - Src:             'quickjs-libc.c:453,5'
          Dst:             js_free
        - Src:             'quickjs-libc.c:454,5'
          Dst:             JS_FreeCString
    - functionName:    js_print
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4028
      functionLinenumberEnd: 4050
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          108
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - JS_FreeCString
        - JS_IsString
        - JS_PrintValue
        - JS_ToCStringLen
        - fwrite
        - js_print_value_write
        - putchar
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:4036,13'
          Dst:             JS_IsString
        - Src:             'quickjs-libc.c:4039,19'
          Dst:             JS_ToCStringLen
        - Src:             'quickjs-libc.c:4042,13'
          Dst:             fwrite
        - Src:             'quickjs-libc.c:4043,13'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:4045,13'
          Dst:             JS_PrintValue
        - Src:             'quickjs-libc.c:4045,13'
          Dst:             js_print_value_write
        - Src:             'quickjs-libc.c:4034,13'
          Dst:             putchar
        - Src:             'quickjs-libc.c:4036,13'
          Dst:             JS_IsString
        - Src:             'quickjs-libc.c:4039,19'
          Dst:             JS_ToCStringLen
        - Src:             'quickjs-libc.c:4042,13'
          Dst:             fwrite
        - Src:             'quickjs-libc.c:4043,13'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:4045,13'
          Dst:             JS_PrintValue
        - Src:             'quickjs-libc.c:4045,13'
          Dst:             js_print_value_write
        - Src:             'quickjs-libc.c:4048,5'
          Dst:             putchar
    - functionName:    putchar
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_os_now
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2157
      functionLinenumberEnd: 2158
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          52
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - __JS_NewFloat64
        - get_time_ns
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:2158,39'
          Dst:             get_time_ns
        - Src:             'quickjs-libc.c:2158,12'
          Dst:             __JS_NewFloat64
    - functionName:    js_console_log
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4054
      functionLinenumberEnd: 4058
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fflush
        - js_print
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:4056,11'
          Dst:             js_print
        - Src:             'quickjs-libc.c:4057,5'
          Dst:             fflush
    - functionName:    JS_NewCFunction
      functionSourceFile: '/src/quickjs/./quickjs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1043
      functionLinenumberEnd: 1044
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_NewCFunction2
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './quickjs.h:1044,12'
          Dst:             JS_NewCFunction2
    - functionName:    js_std_add_helpers
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4062
      functionLinenumberEnd: 4094
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          79
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - JS_FreeValue
        - JS_GetGlobalObject
        - JS_NewArray
        - JS_NewCFunction
        - JS_NewObject
        - JS_NewString
        - JS_SetPropertyStr
        - JS_SetPropertyUint32
        - js_console_log
        - js_loadScript
        - js_os_now
        - js_print
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:4067,18'
          Dst:             JS_GetGlobalObject
        - Src:             'quickjs-libc.c:4069,15'
          Dst:             JS_NewObject
        - Src:             'quickjs-libc.c:4071,23'
          Dst:             JS_NewCFunction
        - Src:             'quickjs-libc.c:4071,23'
          Dst:             js_console_log
        - Src:             'quickjs-libc.c:4070,5'
          Dst:             JS_SetPropertyStr
        - Src:             'quickjs-libc.c:4072,5'
          Dst:             JS_SetPropertyStr
        - Src:             'quickjs-libc.c:4074,19'
          Dst:             JS_NewObject
        - Src:             'quickjs-libc.c:4076,23'
          Dst:             JS_NewCFunction
        - Src:             'quickjs-libc.c:4076,23'
          Dst:             js_os_now
        - Src:             'quickjs-libc.c:4075,5'
          Dst:             JS_SetPropertyStr
        - Src:             'quickjs-libc.c:4077,5'
          Dst:             JS_SetPropertyStr
        - Src:             'quickjs-libc.c:4081,16'
          Dst:             JS_NewArray
        - Src:             'quickjs-libc.c:4083,48'
          Dst:             JS_NewString
        - Src:             'quickjs-libc.c:4083,13'
          Dst:             JS_SetPropertyUint32
        - Src:             'quickjs-libc.c:4085,9'
          Dst:             JS_SetPropertyStr
        - Src:             'quickjs-libc.c:4089,23'
          Dst:             JS_NewCFunction
        - Src:             'quickjs-libc.c:4089,23'
          Dst:             js_print
        - Src:             'quickjs-libc.c:4088,5'
          Dst:             JS_SetPropertyStr
        - Src:             'quickjs-libc.c:4091,23'
          Dst:             JS_NewCFunction
        - Src:             'quickjs-libc.c:4091,23'
          Dst:             js_loadScript
        - Src:             'quickjs-libc.c:4090,5'
          Dst:             JS_SetPropertyStr
        - Src:             'quickjs-libc.c:4093,5'
          Dst:             JS_FreeValue
    - functionName:    js_os_init
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3976
      functionLinenumberEnd: 4007
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_SetModuleExportList
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:4007,12'
          Dst:             JS_SetModuleExportList
    - functionName:    js_init_module_os
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4012
      functionLinenumberEnd: 4022
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          23
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_AddModuleExportList
        - JS_NewCModule
        - js_os_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:4014,9'
          Dst:             JS_NewCModule
        - Src:             'quickjs-libc.c:4014,9'
          Dst:             js_os_init
        - Src:             'quickjs-libc.c:4017,5'
          Dst:             JS_AddModuleExportList
    - functionName:    js_std_set_worker_new_context_func
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3872
      functionLinenumberEnd: 3876
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_std_init
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1691
      functionLinenumberEnd: 1709
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - JS_GetRuntime
        - JS_NewClass
        - JS_NewClassID
        - JS_NewObject
        - JS_SetClassProto
        - JS_SetModuleExport
        - JS_SetModuleExportList
        - JS_SetPropertyFunctionList
        - js_new_std_file
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1696,5'
          Dst:             JS_NewClassID
        - Src:             'quickjs-libc.c:1698,17'
          Dst:             JS_GetRuntime
        - Src:             'quickjs-libc.c:1698,5'
          Dst:             JS_NewClass
        - Src:             'quickjs-libc.c:1699,13'
          Dst:             JS_NewObject
        - Src:             'quickjs-libc.c:1700,5'
          Dst:             JS_SetPropertyFunctionList
        - Src:             'quickjs-libc.c:1702,5'
          Dst:             JS_SetClassProto
        - Src:             'quickjs-libc.c:1704,5'
          Dst:             JS_SetModuleExportList
        - Src:             'quickjs-libc.c:1706,38'
          Dst:             js_new_std_file
        - Src:             'quickjs-libc.c:1706,5'
          Dst:             JS_SetModuleExport
        - Src:             'quickjs-libc.c:1707,39'
          Dst:             js_new_std_file
        - Src:             'quickjs-libc.c:1707,5'
          Dst:             JS_SetModuleExport
        - Src:             'quickjs-libc.c:1708,39'
          Dst:             js_new_std_file
        - Src:             'quickjs-libc.c:1708,5'
          Dst:             JS_SetModuleExport
    - functionName:    js_init_module_std
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1713
      functionLinenumberEnd: 1723
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          26
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - JS_AddModuleExport
        - JS_AddModuleExportList
        - JS_NewCModule
        - js_std_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:1715,9'
          Dst:             JS_NewCModule
        - Src:             'quickjs-libc.c:1715,9'
          Dst:             js_std_init
        - Src:             'quickjs-libc.c:1718,5'
          Dst:             JS_AddModuleExportList
        - Src:             'quickjs-libc.c:1719,5'
          Dst:             JS_AddModuleExport
        - Src:             'quickjs-libc.c:1720,5'
          Dst:             JS_AddModuleExport
        - Src:             'quickjs-libc.c:1721,5'
          Dst:             JS_AddModuleExport
    - functionName:    js_module_loader_so
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 493
      functionLinenumberEnd: 538
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          76
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - JS_ThrowReferenceError
        - dlclose
        - dlopen
        - dlsym
        - js_free
        - js_malloc
        - strchr
        - strcpy
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:499,10'
          Dst:             strchr
        - Src:             'quickjs-libc.c:512,10'
          Dst:             dlopen
        - Src:             'quickjs-libc.c:502,35'
          Dst:             strlen
        - Src:             'quickjs-libc.c:502,20'
          Dst:             js_malloc
        - Src:             'quickjs-libc.c:506,9'
          Dst:             strcpy
        - Src:             'quickjs-libc.c:512,10'
          Dst:             dlopen
        - Src:             'quickjs-libc.c:514,9'
          Dst:             js_free
        - Src:             'quickjs-libc.c:521,12'
          Dst:             dlsym
        - Src:             'quickjs-libc.c:516,9'
          Dst:             JS_ThrowReferenceError
        - Src:             'quickjs-libc.c:0,0'
          Dst:             JS_ThrowReferenceError
        - Src:             'quickjs-libc.c:534,13'
          Dst:             dlclose
    - functionName:    dlopen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strcpy
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dlsym
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dlclose
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    js_module_loader
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 680
      functionLinenumberEnd: 728
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          108
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - JS_Eval
        - JS_FreeValue
        - JS_IsException
        - JS_ParseJSON2
        - JS_ThrowReferenceError
        - create_json_module
        - has_suffix
        - js_free
        - js_load_file
        - js_module_loader_so
        - js_module_set_import_meta
        - js_module_test_json
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:684,9'
          Dst:             has_suffix
        - Src:             'quickjs-libc.c:685,13'
          Dst:             js_module_loader_so
        - Src:             'quickjs-libc.c:690,15'
          Dst:             js_load_file
        - Src:             'quickjs-libc.c:692,13'
          Dst:             JS_ThrowReferenceError
        - Src:             'quickjs-libc.c:696,15'
          Dst:             js_module_test_json
        - Src:             'quickjs-libc.c:697,13'
          Dst:             has_suffix
        - Src:             'quickjs-libc.c:705,19'
          Dst:             JS_ParseJSON2
        - Src:             'quickjs-libc.c:706,13'
          Dst:             js_free
        - Src:             'quickjs-libc.c:707,17'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:709,17'
          Dst:             create_json_module
        - Src:             'quickjs-libc.c:715,24'
          Dst:             JS_Eval
        - Src:             'quickjs-libc.c:717,13'
          Dst:             js_free
        - Src:             'quickjs-libc.c:718,17'
          Dst:             JS_IsException
        - Src:             'quickjs-libc.c:721,13'
          Dst:             js_module_set_import_meta
        - Src:             'quickjs-libc.c:724,13'
          Dst:             JS_FreeValue
    - functionName:    js_module_test_json
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 650
      functionLinenumberEnd: 675
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          81
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - JS_FreeCString
        - JS_FreeValue
        - JS_GetPropertyStr
        - JS_IsString
        - JS_IsUndefined
        - JS_ToCStringLen
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:656,9'
          Dst:             JS_IsUndefined
        - Src:             'quickjs-libc.c:658,11'
          Dst:             JS_GetPropertyStr
        - Src:             'quickjs-libc.c:659,10'
          Dst:             JS_IsString
        - Src:             'quickjs-libc.c:661,12'
          Dst:             JS_ToCStringLen
        - Src:             'quickjs-libc.c:662,5'
          Dst:             JS_FreeValue
        - Src:             'quickjs-libc.c:666,22'
          Dst:             memcmp
        - Src:             'quickjs-libc.c:668,29'
          Dst:             memcmp
        - Src:             'quickjs-libc.c:673,5'
          Dst:             JS_FreeCString
    - functionName:    js_module_check_attributes
      functionSourceFile: '/src/quickjs/quickjs-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 620
      functionLinenumberEnd: 646
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          87
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - JS_AtomToCStringLen
        - JS_FreeCString
        - JS_FreePropertyEnum
        - JS_GetOwnPropertyNames
        - JS_ThrowTypeError
        - memcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'quickjs-libc.c:627,9'
          Dst:             JS_GetOwnPropertyNames
        - Src:             'quickjs-libc.c:631,16'
          Dst:             JS_AtomToCStringLen
        - Src:             'quickjs-libc.c:636,33'
          Dst:             memcmp
        - Src:             'quickjs-libc.c:637,13'
          Dst:             JS_ThrowTypeError
        - Src:             'quickjs-libc.c:640,9'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:640,9'
          Dst:             JS_FreeCString
        - Src:             'quickjs-libc.c:644,5'
          Dst:             JS_FreePropertyEnum
...
