---
Fuzzer filename: '/src/quickjs/fuzz/fuzz_regexp.c'
All functions:
  Function list name: All functions
  Elements:
    - functionName:    LLVMFuzzerTestOneInput
      functionSourceFile: '/src/quickjs/fuzz/fuzz_regexp.c'
      linkageType:     externalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          119
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - lre_compile
        - lre_exec
        - lre_get_capture_count
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzz/fuzz_regexp.c:53,10'
          Dst:             lre_compile
        - Src:             'fuzz/fuzz_regexp.c:59,11'
          Dst:             lre_exec
        - Src:             'fuzz/fuzz_regexp.c:61,9'
          Dst:             lre_get_capture_count
    - functionName:    lre_check_timeout
      functionSourceFile: '/src/quickjs/fuzz/fuzz_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lre_realloc
      functionSourceFile: '/src/quickjs/fuzz/fuzz_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24
      functionLinenumberEnd: 25
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - realloc
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzz/fuzz_regexp.c:25,12'
          Dst:             realloc
    - 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:    lre_check_stack_overflow
      functionSourceFile: '/src/quickjs/fuzz/fuzz_regexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_word_char
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2551
      functionLinenumberEnd: 2555
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          55
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_line_terminator
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2546
      functionLinenumberEnd: 2547
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          33
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    push_state
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2681
      functionLinenumberEnd: 2712
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         59
      ICount:          338
      EdgeCount:       80
      CyclomaticComplexity: 23
      functionsReached:
        - lre_realloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:2692,21'
          Dst:             lre_realloc
    - functionName:    lre_poll_timeout
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2715
      functionLinenumberEnd: 2722
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          39
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - lre_check_timeout
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:2718,13'
          Dst:             lre_check_timeout
    - functionName:    re_emit_op_u16
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 614
      functionLinenumberEnd: 617
      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:615,5'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:616,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:    9
      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: 1202
      functionLinenumberEnd: 1205
      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: 1166
      functionLinenumberEnd: 1199
      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:1172,16'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1174,9'
          Dst:             re_emit_op_u32
        - Src:             'libregexp.c:1182,13'
          Dst:             re_emit_op_u16
        - Src:             'libregexp.c:1184,17'
          Dst:             dbuf_put_u16
        - Src:             'libregexp.c:1188,17'
          Dst:             dbuf_put_u16
        - Src:             'libregexp.c:1191,13'
          Dst:             re_emit_op_u16
        - Src:             'libregexp.c:1193,17'
          Dst:             dbuf_put_u32
        - Src:             'libregexp.c:1194,17'
          Dst:             dbuf_put_u32
    - functionName:    re_parse_error
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 620
      functionLinenumberEnd: 626
      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:623,5'
          Dst:             vsnprintf
    - functionName:    re_emit_op_u32
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 590
      functionLinenumberEnd: 595
      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:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:592,5'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:594,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:    6
      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:    16
      BranchProfiles:  []
      Callsites:       []
    - 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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    re_string_hash
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 152
      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: 280
      functionLinenumberEnd: 283
      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:282,10'
          Dst:             re_string_hash
        - Src:             'libregexp.c:283,12'
          Dst:             re_string_find2
    - functionName:    re_string_find2
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 224
      functionLinenumberEnd: 276
      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:231,18'
          Dst:             memcmp
        - Src:             'libregexp.c:244,25'
          Dst:             max_int
        - Src:             'libregexp.c:246,26'
          Dst:             lre_realloc
        - Src:             'libregexp.c:259,9'
          Dst:             lre_realloc
        - Src:             'libregexp.c:266,9'
          Dst:             lre_realloc
    - 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:    4
      BranchProfiles:  []
      Callsites:       []
    - 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: 288
      functionLinenumberEnd: 295
      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:290,16'
          Dst:             cr_union_interval
        - Src:             'libregexp.c:292,9'
          Dst:             re_string_find
    - functionName:    cr_union_interval
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 87
      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:86,12'
          Dst:             cr_op1
    - functionName:    re_string_list_canonicalize
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 383
      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:349,9'
          Dst:             cr_regexp_canonicalize
        - Src:             'libregexp.c:357,9'
          Dst:             re_string_list_init
        - Src:             'libregexp.c:372,33'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:374,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: 156
      functionLinenumberEnd: 162
      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:157,5'
          Dst:             cr_init
        - Src:             'libregexp.c:157,5'
          Dst:             lre_realloc
    - functionName:    re_string_list_free
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 177
      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:    20
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:171,13'
          Dst:             lre_realloc
        - Src:             'libregexp.c:174,5'
          Dst:             lre_realloc
        - Src:             'libregexp.c:176,5'
          Dst:             cr_free
    - functionName:    seq_prop_cb
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 804
      functionLinenumberEnd: 807
      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:806,5'
          Dst:             re_string_add
    - functionName:    is_unicode_char
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 795
      functionLinenumberEnd: 799
      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: 57
      functionLinenumberEnd: 64
      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:59,13'
          Dst:             cr_realloc
    - functionName:    parse_class_string_disjunction
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 935
      functionLinenumberEnd: 979
      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:942,16'
          Dst:             re_parse_error
        - Src:             'libregexp.c:944,5'
          Dst:             dbuf_init2
        - Src:             'libregexp.c:944,5'
          Dst:             lre_realloc
        - Src:             'libregexp.c:945,5'
          Dst:             re_string_list_init
        - Src:             'libregexp.c:951,17'
          Dst:             get_class_atom
        - Src:             'libregexp.c:954,17'
          Dst:             dbuf_put_u32
        - Src:             'libregexp.c:959,13'
          Dst:             re_string_add
        - Src:             'libregexp.c:968,13'
          Dst:             re_string_list_canonicalize
        - Src:             'libregexp.c:972,5'
          Dst:             dbuf_free
        - Src:             'libregexp.c:0,0'
          Dst:             re_parse_out_of_memory
        - Src:             'libregexp.c:976,5'
          Dst:             dbuf_free
        - Src:             'libregexp.c:977,5'
          Dst:             re_string_list_free
    - functionName:    get_class_atom
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 986
      functionLinenumberEnd: 1163
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         138
      ICount:          567
      EdgeCount:       167
      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:994,5'
          Branch Sides:    []
        - Branch String:   'libregexp.c:1000,9'
          Branch Sides:    []
      Callsites:
        - Src:             'libregexp.c:1021,17'
          Dst:             cr_init_char_range
        - Src:             'libregexp.c:1066,21'
          Dst:             parse_unicode_property
        - Src:             'libregexp.c:1075,21'
          Dst:             parse_class_string_disjunction
        - Src:             'libregexp.c:1084,19'
          Dst:             lre_parse_escape
        - Src:             'libregexp.c:1090,28'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1102,20'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1128,20'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1143,20'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1151,17'
          Dst:             unicode_from_utf8
        - Src:             'libregexp.c:1154,24'
          Dst:             re_parse_error
    - functionName:    re_parse_out_of_memory
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 629
      functionLinenumberEnd: 630
      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:630,12'
          Dst:             re_parse_error
    - functionName:    cr_init_char_range
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 434
      functionLinenumberEnd: 455
      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:442,5'
          Dst:             re_string_list_init
        - Src:             'libregexp.c:444,13'
          Dst:             cr_add_point
        - Src:             'libregexp.c:448,13'
          Dst:             cr_invert
        - Src:             'libregexp.c:453,5'
          Dst:             re_string_list_free
    - functionName:    parse_unicode_property
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 812
      functionLinenumberEnd: 927
      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:824,12'
          Dst:             is_unicode_char
        - Src:             'libregexp.c:821,16'
          Dst:             re_parse_error
        - Src:             'libregexp.c:824,12'
          Dst:             is_unicode_char
        - Src:             'libregexp.c:833,16'
          Dst:             is_unicode_char
        - Src:             'libregexp.c:835,24'
          Dst:             re_parse_error
        - Src:             'libregexp.c:833,16'
          Dst:             is_unicode_char
        - Src:             'libregexp.c:841,16'
          Dst:             re_parse_error
        - Src:             'libregexp.c:845,10'
          Dst:             strcmp
        - Src:             'libregexp.c:845,37'
          Dst:             strcmp
        - Src:             'libregexp.c:848,17'
          Dst:             strcmp
        - Src:             'libregexp.c:848,55'
          Dst:             strcmp
        - Src:             'libregexp.c:851,9'
          Dst:             re_string_list_init
        - Src:             'libregexp.c:852,15'
          Dst:             unicode_script
        - Src:             'libregexp.c:854,13'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:856,24'
          Dst:             re_parse_error
        - Src:             'libregexp.c:860,17'
          Dst:             strcmp
        - Src:             'libregexp.c:860,54'
          Dst:             strcmp
        - Src:             'libregexp.c:861,9'
          Dst:             re_string_list_init
        - Src:             'libregexp.c:862,15'
          Dst:             unicode_general_category
        - Src:             'libregexp.c:864,13'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:866,24'
          Dst:             re_parse_error
        - Src:             'libregexp.c:871,9'
          Dst:             re_string_list_init
        - Src:             'libregexp.c:872,15'
          Dst:             unicode_general_category
        - Src:             'libregexp.c:874,13'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:878,19'
          Dst:             unicode_prop
        - Src:             'libregexp.c:880,17'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:886,13'
          Dst:             cr_init
        - Src:             'libregexp.c:886,13'
          Dst:             lre_realloc
        - Src:             'libregexp.c:887,19'
          Dst:             unicode_sequence_prop
        - Src:             'libregexp.c:887,19'
          Dst:             seq_prop_cb
        - Src:             'libregexp.c:888,13'
          Dst:             cr_free
        - Src:             'libregexp.c:890,17'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:898,16'
          Dst:             re_parse_error
        - Src:             'libregexp.c:906,13'
          Dst:             re_string_list_canonicalize
        - Src:             'libregexp.c:907,13'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:912,13'
          Dst:             cr_invert
        - Src:             'libregexp.c:913,13'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:918,13'
          Dst:             re_string_list_canonicalize
        - Src:             'libregexp.c:919,13'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:926,12'
          Dst:             re_parse_out_of_memory
    - functionName:    lre_parse_escape
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 682
      functionLinenumberEnd: 790
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         74
      ICount:          342
      EdgeCount:       96
      CyclomaticComplexity: 24
      functionsReached:
        - from_hex
        - from_surrogate
        - is_digit
        - is_hi_surrogate
        - is_lo_surrogate
      functionUses:    2
      BranchProfiles:
        - Branch String:   'libregexp.c:688,5'
          Branch Sides:    []
      Callsites:
        - Src:             'libregexp.c:717,25'
          Dst:             from_hex
        - Src:             'libregexp.c:736,25'
          Dst:             from_hex
        - Src:             'libregexp.c:742,21'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:748,29'
          Dst:             from_hex
        - Src:             'libregexp.c:748,29'
          Dst:             from_hex
        - Src:             'libregexp.c:748,29'
          Dst:             from_hex
        - Src:             'libregexp.c:748,29'
          Dst:             from_hex
        - Src:             'libregexp.c:753,35'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:755,29'
          Dst:             from_surrogate
        - Src:             'libregexp.c:766,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:    6
      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:    18
      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:    18
      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:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_digit
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          19
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      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:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    re_parse_class_set_operand
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1297
      functionLinenumberEnd: 1320
      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:1302,13'
          Dst:             re_parse_nested_class
        - Src:             'libregexp.c:1305,14'
          Dst:             get_class_atom
        - Src:             'libregexp.c:1310,13'
          Dst:             re_string_list_init
        - Src:             'libregexp.c:1312,22'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:1313,17'
          Dst:             cr_union_interval
        - Src:             'libregexp.c:1314,17'
          Dst:             re_string_list_free
    - functionName:    re_parse_nested_class
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1323
      functionLinenumberEnd: 1477
      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:1330,9'
          Dst:             lre_check_stack_overflow
        - Src:             'libregexp.c:1331,16'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1333,5'
          Dst:             re_string_list_init
        - Src:             'libregexp.c:1349,17'
          Dst:             re_parse_nested_class
        - Src:             'libregexp.c:1353,18'
          Dst:             get_class_atom
        - Src:             'libregexp.c:1362,25'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:1368,22'
          Dst:             get_class_atom
        - Src:             'libregexp.c:1372,21'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:1382,21'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1387,21'
          Dst:             cr_init
        - Src:             'libregexp.c:1387,21'
          Dst:             lre_realloc
        - Src:             'libregexp.c:1388,25'
          Dst:             cr_add_interval
        - Src:             'libregexp.c:1389,25'
          Dst:             cr_regexp_canonicalize
        - Src:             'libregexp.c:1390,25'
          Dst:             cr_op1
        - Src:             'libregexp.c:1394,21'
          Dst:             cr_free
        - Src:             'libregexp.c:1391,25'
          Dst:             cr_free
        - Src:             'libregexp.c:1396,25'
          Dst:             cr_union_interval
        - Src:             'libregexp.c:1404,27'
          Dst:             re_string_list_op
        - Src:             'libregexp.c:1405,21'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:1410,30'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:1411,25'
          Dst:             cr_union_interval
        - Src:             'libregexp.c:1427,25'
          Dst:             re_parse_class_set_operand
        - Src:             'libregexp.c:1429,27'
          Dst:             re_string_list_op
        - Src:             'libregexp.c:1430,21'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:1446,25'
          Dst:             re_parse_class_set_operand
        - Src:             'libregexp.c:1443,25'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1448,27'
          Dst:             re_string_list_op
        - Src:             'libregexp.c:1449,21'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:1465,13'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1468,13'
          Dst:             cr_invert
        - Src:             'libregexp.c:1473,5'
          Dst:             re_parse_out_of_memory
        - Src:             'libregexp.c:1475,5'
          Dst:             re_string_list_free
    - functionName:    cr_add_interval
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 75
      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:69,13'
          Dst:             cr_realloc
    - functionName:    re_string_list_op
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 344
      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:306,5'
          Branch Sides:    []
      Callsites:
        - Src:             'libregexp.c:303,9'
          Dst:             cr_op1
        - Src:             'libregexp.c:311,25'
          Dst:             re_string_find2
        - Src:             'libregexp.c:325,23'
          Dst:             re_string_find2
        - Src:             'libregexp.c:332,21'
          Dst:             lre_realloc
        - Src:             'libregexp.c:341,9'
          Dst:             abort
    - 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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lre_is_id_continue_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_is_id_start_byte
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 140
      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: 171
      functionLinenumberEnd: 184
      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:173,16'
          Dst:             lre_is_id_continue_byte
        - Src:             './libunicode.h:179,16'
          Dst:             lre_is_id_continue
    - functionName:    lre_js_is_ident_first
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 169
      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:161,16'
          Dst:             lre_is_id_start_byte
        - Src:             './libunicode.h:164,16'
          Dst:             lre_is_id_start
    - functionName:    re_emit_goto
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 599
      functionLinenumberEnd: 604
      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:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:601,5'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:603,5'
          Dst:             dbuf_put_u32
    - functionName:    re_need_check_advance
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1499
      functionLinenumberEnd: 1558
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         43
      ICount:          174
      EdgeCount:       44
      CyclomaticComplexity: 3
      functionsReached:
        - get_u16
      functionUses:    1
      BranchProfiles:
        - Branch String:   'libregexp.c:1509,9'
          Branch Sides:    []
      Callsites:
        - Src:             'libregexp.c:0,0'
          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_is_simple_quantifier
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1563
      functionLinenumberEnd: 1607
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         32
      ICount:          131
      EdgeCount:       33
      CyclomaticComplexity: 3
      functionsReached:
        - get_u16
      functionUses:    1
      BranchProfiles:
        - Branch String:   'libregexp.c:1572,9'
          Branch Sides:    []
      Callsites:
        - Src:             'libregexp.c:0,0'
          Dst:             get_u16
    - functionName:    re_emit_char
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1209
      functionLinenumberEnd: 1214
      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:1211,9'
          Dst:             re_emit_op_u16
        - Src:             'libregexp.c:1213,9'
          Dst:             re_emit_op_u32
    - functionName:    re_emit_string_list
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1217
      functionLinenumberEnd: 1292
      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:1225,13'
          Dst:             re_emit_range
        - Src:             'libregexp.c:1230,15'
          Dst:             lre_realloc
        - Src:             'libregexp.c:1232,13'
          Dst:             re_parse_out_of_memory
        - Src:             'libregexp.c:1246,9'
          Dst:             __assert_fail
        - Src:             'libregexp.c:1248,9'
          Dst:             rqsort
        - Src:             'libregexp.c:1248,9'
          Dst:             re_string_cmp_len
        - Src:             'libregexp.c:1255,29'
          Dst:             re_emit_op_u32
        - Src:             'libregexp.c:1259,17'
          Dst:             re_emit_char
        - Src:             'libregexp.c:1262,34'
          Dst:             re_emit_op_u32
        - Src:             'libregexp.c:1263,17'
          Dst:             put_u32
        - Src:             'libregexp.c:1248,9'
          Dst:             rqsort
        - Src:             'libregexp.c:1248,9'
          Dst:             re_string_cmp_len
        - Src:             'libregexp.c:1274,17'
          Dst:             re_emit_range
        - Src:             'libregexp.c:1271,29'
          Dst:             re_emit_op_u32
        - Src:             'libregexp.c:1274,17'
          Dst:             re_emit_range
        - Src:             'libregexp.c:1275,17'
          Dst:             lre_realloc
        - Src:             'libregexp.c:1279,17'
          Dst:             put_u32
        - Src:             'libregexp.c:1284,28'
          Dst:             get_u32
        - Src:             'libregexp.c:1285,13'
          Dst:             put_u32
        - Src:             'libregexp.c:1289,9'
          Dst:             lre_realloc
    - 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:    15
      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:    17
      BranchProfiles:  []
      Callsites:       []
    - functionName:    re_parse_char_class
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1480
      functionLinenumberEnd: 1492
      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:1483,9'
          Dst:             re_parse_nested_class
        - Src:             'libregexp.c:1485,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: 1719
      functionLinenumberEnd: 1724
      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:1721,34'
          Dst:             re_parse_captures
    - functionName:    re_parse_captures
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1669
      functionLinenumberEnd: 1716
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         46
      ICount:          201
      EdgeCount:       61
      CyclomaticComplexity: 17
      functionsReached:
        - re_parse_group_name
        - strcmp
      functionUses:    2
      BranchProfiles:
        - Branch String:   'libregexp.c:1677,9'
          Branch Sides:    []
      Callsites:
        - Src:             'libregexp.c:1685,29'
          Dst:             re_parse_group_name
        - Src:             'libregexp.c:1686,34'
          Dst:             strcmp
    - functionName:    re_parse_group_name
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1611
      functionLinenumberEnd: 1662
      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:1624,17'
          Dst:             lre_parse_escape
        - Src:             'libregexp.c:1628,17'
          Dst:             unicode_from_utf8
        - Src:             'libregexp.c:1629,17'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:1630,21'
          Dst:             unicode_from_utf8
        - Src:             'libregexp.c:1631,21'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:1632,25'
          Dst:             from_surrogate
        - Src:             'libregexp.c:1642,18'
          Dst:             lre_js_is_ident_first
        - Src:             'libregexp.c:1645,18'
          Dst:             lre_js_is_ident_next
        - Src:             'libregexp.c:1653,18'
          Dst:             unicode_to_utf8
    - functionName:    re_has_named_captures
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1728
      functionLinenumberEnd: 1731
      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:1730,9'
          Dst:             re_count_captures
    - functionName:    find_group_name
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1735
      functionLinenumberEnd: 1753
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          67
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - memcmp
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:1743,16'
          Dst:             strlen
        - Src:             'libregexp.c:1746,15'
          Dst:             strlen
        - Src:             'libregexp.c:1747,32'
          Dst:             memcmp
    - 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:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    update_modifier
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1784
      functionLinenumberEnd: 1789
      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: 1758
      functionLinenumberEnd: 1780
      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:1774,20'
          Dst:             re_parse_error
    - functionName:    re_parse_expect
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 661
      functionLinenumberEnd: 669
      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:665,16'
          Dst:             re_parse_error
    - functionName:    parse_digits
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 636
      functionLinenumberEnd: 658
      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: 1793
      functionLinenumberEnd: 2319
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         298
      ICount:          1579
      EdgeCount:       405
      CyclomaticComplexity: 109
      functionsReached:
        - dbuf_error
        - dbuf_insert
        - dbuf_put
        - dbuf_put_self
        - dbuf_putc
        - find_group_name
        - get_class_atom
        - is_digit
        - lre_canonicalize
        - parse_digits
        - put_u32
        - re_count_captures
        - re_emit_char
        - re_emit_goto
        - re_emit_op
        - re_emit_op_u32
        - re_emit_op_u8
        - re_emit_string_list
        - re_has_named_captures
        - re_is_simple_quantifier
        - re_need_check_advance
        - 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:1803,5'
          Branch Sides:    []
        - Branch String:   'libregexp.c:1973,9'
          Branch Sides:    []
        - Branch String:   'libregexp.c:2121,9'
          Branch Sides:    []
      Callsites:
        - Src:             'libregexp.c:1806,9'
          Dst:             re_emit_op
        - Src:             'libregexp.c:1810,9'
          Dst:             re_emit_op
        - Src:             'libregexp.c:1817,13'
          Dst:             re_emit_op
        - Src:             'libregexp.c:1818,9'
          Dst:             re_emit_op
        - Src:             'libregexp.c:1820,13'
          Dst:             re_emit_op
        - Src:             'libregexp.c:1824,20'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1825,21'
          Dst:             is_digit
        - Src:             'libregexp.c:1832,13'
          Dst:             parse_digits
        - Src:             'libregexp.c:1835,21'
          Dst:             is_digit
        - Src:             'libregexp.c:1836,21'
          Dst:             parse_digits
        - Src:             'libregexp.c:1847,16'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1855,21'
          Dst:             re_parse_disjunction
        - Src:             'libregexp.c:1858,21'
          Dst:             re_parse_expect
        - Src:             'libregexp.c:1865,28'
          Dst:             re_parse_modifiers
        - Src:             'libregexp.c:1870,35'
          Dst:             re_parse_modifiers
        - Src:             'libregexp.c:1876,28'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1878,21'
          Dst:             re_parse_expect
        - Src:             'libregexp.c:1883,34'
          Dst:             update_modifier
        - Src:             'libregexp.c:1884,33'
          Dst:             update_modifier
        - Src:             'libregexp.c:1885,29'
          Dst:             update_modifier
        - Src:             'libregexp.c:1890,21'
          Dst:             re_parse_disjunction
        - Src:             'libregexp.c:1893,21'
          Dst:             re_parse_expect
        - Src:             'libregexp.c:1917,23'
          Dst:             re_emit_op_u32
        - Src:             'libregexp.c:1919,21'
          Dst:             re_parse_disjunction
        - Src:             'libregexp.c:1922,21'
          Dst:             re_parse_expect
        - Src:             'libregexp.c:1924,17'
          Dst:             re_emit_op
        - Src:             'libregexp.c:1926,21'
          Dst:             dbuf_error
        - Src:             'libregexp.c:1928,17'
          Dst:             put_u32
        - Src:             'libregexp.c:1931,21'
          Dst:             re_parse_group_name
        - Src:             'libregexp.c:1933,28'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1935,21'
          Dst:             find_group_name
        - Src:             'libregexp.c:1936,28'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1940,26'
          Dst:             strlen
        - Src:             'libregexp.c:1939,17'
          Dst:             dbuf_put
        - Src:             'libregexp.c:1944,24'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1950,13'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:1953,24'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1957,13'
          Dst:             re_emit_op_u8
        - Src:             'libregexp.c:1961,17'
          Dst:             re_parse_disjunction
        - Src:             'libregexp.c:1965,13'
          Dst:             re_emit_op_u8
        - Src:             'libregexp.c:1968,17'
          Dst:             re_parse_expect
        - Src:             'libregexp.c:0,0'
          Dst:             re_emit_op
        - Src:             'libregexp.c:1993,42'
          Dst:             re_has_named_captures
        - Src:             'libregexp.c:1999,21'
          Dst:             re_parse_group_name
        - Src:             'libregexp.c:2001,42'
          Dst:             re_has_named_captures
        - Src:             'libregexp.c:2006,21'
          Dst:             find_group_name
        - Src:             'libregexp.c:2010,25'
          Dst:             re_parse_captures
        - Src:             'libregexp.c:2012,46'
          Dst:             re_has_named_captures
        - Src:             'libregexp.c:0,0'
          Dst:             re_parse_error
        - Src:             'libregexp.c:2025,21'
          Dst:             is_digit
        - Src:             'libregexp.c:2026,28'
          Dst:             re_parse_error
        - Src:             'libregexp.c:2044,21'
          Dst:             parse_digits
        - Src:             'libregexp.c:2045,61'
          Dst:             re_count_captures
        - Src:             'libregexp.c:2064,28'
          Dst:             re_parse_error
        - Src:             'libregexp.c:2070,17'
          Dst:             re_emit_op_u8
        - Src:             'libregexp.c:2082,13'
          Dst:             re_parse_char_class
        - Src:             'libregexp.c:2081,13'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2082,13'
          Dst:             re_parse_char_class
        - Src:             'libregexp.c:2085,13'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2090,20'
          Dst:             re_parse_error
        - Src:             'libregexp.c:2094,13'
          Dst:             get_class_atom
        - Src:             'libregexp.c:2101,13'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2104,19'
          Dst:             re_emit_string_list
        - Src:             'libregexp.c:2105,13'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:2110,21'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:2111,13'
          Dst:             re_emit_char
        - Src:             'libregexp.c:2114,13'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2142,22'
          Dst:             is_digit
        - Src:             'libregexp.c:2148,29'
          Dst:             parse_digits
        - Src:             'libregexp.c:2152,25'
          Dst:             is_digit
        - Src:             'libregexp.c:2153,37'
          Dst:             parse_digits
        - Src:             'libregexp.c:2156,36'
          Dst:             re_parse_error
        - Src:             'libregexp.c:2167,21'
          Dst:             re_parse_expect
        - Src:             'libregexp.c:2184,25'
          Dst:             dbuf_error
        - Src:             'libregexp.c:2186,27'
          Dst:             re_is_simple_quantifier
        - Src:             'libregexp.c:2189,25'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2191,29'
          Dst:             dbuf_insert
        - Src:             'libregexp.c:2208,21'
          Dst:             dbuf_error
        - Src:             'libregexp.c:2195,25'
          Dst:             put_u32
        - Src:             'libregexp.c:2198,25'
          Dst:             put_u32
        - Src:             'libregexp.c:2200,25'
          Dst:             put_u32
        - Src:             'libregexp.c:2202,25'
          Dst:             put_u32
        - Src:             'libregexp.c:2215,38'
          Dst:             re_need_check_advance
        - Src:             'libregexp.c:2225,29'
          Dst:             dbuf_insert
        - Src:             'libregexp.c:2235,29'
          Dst:             dbuf_insert
        - Src:             'libregexp.c:2239,25'
          Dst:             put_u32
        - Src:             'libregexp.c:2243,29'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2246,29'
          Dst:             re_emit_goto
        - Src:             'libregexp.c:2248,29'
          Dst:             dbuf_insert
        - Src:             'libregexp.c:2252,25'
          Dst:             put_u32
        - Src:             'libregexp.c:2255,25'
          Dst:             put_u32
        - Src:             'libregexp.c:2259,29'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2261,25'
          Dst:             re_emit_goto
        - Src:             'libregexp.c:2262,25'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2266,21'
          Dst:             re_emit_goto
        - Src:             'libregexp.c:2272,29'
          Dst:             dbuf_insert
        - Src:             'libregexp.c:2275,25'
          Dst:             put_u32
        - Src:             'libregexp.c:2278,25'
          Dst:             re_emit_goto
        - Src:             'libregexp.c:2279,25'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2283,25'
          Dst:             re_emit_op_u32
        - Src:             'libregexp.c:2288,25'
          Dst:             dbuf_put_self
        - Src:             'libregexp.c:2286,29'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2288,25'
          Dst:             dbuf_put_self
        - Src:             'libregexp.c:2290,29'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2291,25'
          Dst:             re_emit_goto
        - Src:             'libregexp.c:2293,25'
          Dst:             re_emit_op_u32
        - Src:             'libregexp.c:2295,25'
          Dst:             re_emit_op_u32
        - Src:             'libregexp.c:2300,25'
          Dst:             dbuf_put_self
        - Src:             'libregexp.c:2298,29'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2300,25'
          Dst:             dbuf_put_self
        - Src:             'libregexp.c:2302,29'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2303,25'
          Dst:             re_emit_goto
        - Src:             'libregexp.c:2304,25'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2318,12'
          Dst:             re_parse_out_of_memory
    - functionName:    re_emit_op
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 586
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_putc
      functionUses:    23
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:585,5'
          Dst:             dbuf_putc
    - functionName:    re_parse_disjunction
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2356
      functionLinenumberEnd: 2387
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          99
      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:2359,9'
          Dst:             lre_check_stack_overflow
        - Src:             'libregexp.c:2360,16'
          Dst:             re_parse_error
        - Src:             'libregexp.c:2363,9'
          Dst:             re_parse_alternative
        - Src:             'libregexp.c:2371,13'
          Dst:             dbuf_insert
        - Src:             'libregexp.c:2372,20'
          Dst:             re_parse_out_of_memory
        - Src:             'libregexp.c:2375,9'
          Dst:             put_u32
        - Src:             'libregexp.c:2377,15'
          Dst:             re_emit_op_u32
        - Src:             'libregexp.c:2379,13'
          Dst:             re_parse_alternative
        - Src:             'libregexp.c:2384,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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    re_emit_op_u8
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 608
      functionLinenumberEnd: 611
      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:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:609,5'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:610,5'
          Dst:             dbuf_putc
    - functionName:    dbuf_insert
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 125
      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:120,9'
          Dst:             dbuf_claim
    - functionName:    re_parse_alternative
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2322
      functionLinenumberEnd: 2353
      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:2335,15'
          Dst:             re_parse_term
        - Src:             'libregexp.c:2343,17'
          Dst:             dbuf_claim
    - functionName:    lre_get_groupnames
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3219
      functionLinenumberEnd: 3225
      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:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:3221,10'
          Dst:             lre_get_flags
        - Src:             'libregexp.c:3223,23'
          Dst:             get_u32
    - functionName:    lre_get_flags
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3212
      functionLinenumberEnd: 3213
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_u16
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:3213,12'
          Dst:             get_u16
    - functionName:    lre_get_capture_count
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3207
      functionLinenumberEnd: 3208
      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:    lre_exec_backtrack
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2729
      functionLinenumberEnd: 3154
      functionDepth:   0
      returnType:      size_t
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         421
      ICount:          1888
      EdgeCount:       576
      CyclomaticComplexity: 157
      functionsReached:
        - __assert_fail
        - abort
        - from_surrogate
        - get_u16
        - get_u32
        - is_hi_surrogate
        - is_line_terminator
        - is_lo_surrogate
        - is_word_char
        - lre_canonicalize
        - lre_exec_backtrack
        - lre_poll_timeout
        - push_state
      functionUses:    2
      BranchProfiles:
        - Branch String:   'libregexp.c:2741,9'
          Branch Sides:    []
      Callsites:
        - Src:             'libregexp.c:2755,25'
          Dst:             lre_poll_timeout
        - Src:             'libregexp.c:2786,42'
          Dst:             get_u32
        - Src:             'libregexp.c:2788,33'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:2788,33'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:2790,51'
          Dst:             get_u32
        - Src:             'libregexp.c:2755,25'
          Dst:             lre_poll_timeout
        - Src:             'libregexp.c:2815,19'
          Dst:             get_u32
        - Src:             'libregexp.c:2820,19'
          Dst:             get_u16
        - Src:             'libregexp.c:2825,13'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:2825,13'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:2825,13'
          Dst:             from_surrogate
        - Src:             'libregexp.c:2827,21'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:2837,23'
          Dst:             get_u32
        - Src:             'libregexp.c:2845,23'
          Dst:             push_state
        - Src:             'libregexp.c:2853,19'
          Dst:             get_u32
        - Src:             'libregexp.c:2855,19'
          Dst:             push_state
        - Src:             'libregexp.c:2864,19'
          Dst:             get_u32
        - Src:             'libregexp.c:2866,17'
          Dst:             lre_poll_timeout
        - Src:             'libregexp.c:2875,13'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:2875,13'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:2875,13'
          Dst:             from_surrogate
        - Src:             'libregexp.c:2876,18'
          Dst:             is_line_terminator
        - Src:             'libregexp.c:2885,13'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:2885,13'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:2885,13'
          Dst:             from_surrogate
        - Src:             'libregexp.c:2886,18'
          Dst:             is_line_terminator
        - Src:             'libregexp.c:2892,13'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:2892,13'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:2892,13'
          Dst:             from_surrogate
        - Src:             'libregexp.c:2893,17'
          Dst:             is_line_terminator
        - Src:             'libregexp.c:2899,13'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:2899,13'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:2904,13'
          Dst:             __assert_fail
        - Src:             'libregexp.c:2913,17'
          Dst:             __assert_fail
        - Src:             'libregexp.c:2922,19'
          Dst:             get_u32
        - Src:             'libregexp.c:2930,19'
          Dst:             get_u32
        - Src:             'libregexp.c:2934,21'
          Dst:             lre_poll_timeout
        - Src:             'libregexp.c:2957,21'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:2957,21'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:2957,21'
          Dst:             from_surrogate
        - Src:             'libregexp.c:2959,29'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:2960,26'
          Dst:             is_word_char
        - Src:             'libregexp.c:2966,21'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:2966,21'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:2966,21'
          Dst:             from_surrogate
        - Src:             'libregexp.c:2968,29'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:2969,26'
          Dst:             is_word_char
        - Src:             'libregexp.c:2996,25'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:2996,25'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:2996,25'
          Dst:             from_surrogate
        - Src:             'libregexp.c:2997,25'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:2997,25'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:2997,25'
          Dst:             from_surrogate
        - Src:             'libregexp.c:2999,34'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:3000,34'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:3010,25'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3010,25'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3010,25'
          Dst:             from_surrogate
        - Src:             'libregexp.c:3011,25'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3011,25'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3011,25'
          Dst:             from_surrogate
        - Src:             'libregexp.c:3013,34'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:3014,34'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:3028,21'
          Dst:             get_u16
        - Src:             'libregexp.c:3032,17'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3032,17'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3032,17'
          Dst:             from_surrogate
        - Src:             'libregexp.c:3034,25'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:3037,23'
          Dst:             get_u16
        - Src:             'libregexp.c:3041,24'
          Dst:             get_u16
        - Src:             'libregexp.c:3049,27'
          Dst:             get_u16
        - Src:             'libregexp.c:3050,28'
          Dst:             get_u16
        - Src:             'libregexp.c:3069,21'
          Dst:             get_u16
        - Src:             'libregexp.c:3073,17'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3073,17'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3073,17'
          Dst:             from_surrogate
        - Src:             'libregexp.c:3075,25'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:3078,23'
          Dst:             get_u32
        - Src:             'libregexp.c:3082,24'
          Dst:             get_u32
        - Src:             'libregexp.c:3087,27'
          Dst:             get_u32
        - Src:             'libregexp.c:3088,28'
          Dst:             get_u32
        - Src:             'libregexp.c:3105,13'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3105,13'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3114,28'
          Dst:             get_u32
        - Src:             'libregexp.c:3115,29'
          Dst:             get_u32
        - Src:             'libregexp.c:3116,29'
          Dst:             get_u32
        - Src:             'libregexp.c:3123,25'
          Dst:             lre_poll_timeout
        - Src:             'libregexp.c:3125,27'
          Dst:             lre_exec_backtrack
        - Src:             'libregexp.c:3123,25'
          Dst:             lre_poll_timeout
        - Src:             'libregexp.c:3141,27'
          Dst:             push_state
        - Src:             'libregexp.c:3151,13'
          Dst:             abort
    - functionName:    lre_exec
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3162
      functionLinenumberEnd: 3204
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          147
      EdgeCount:       30
      CyclomaticComplexity: 10
      functionsReached:
        - is_hi_surrogate
        - is_lo_surrogate
        - lre_exec_backtrack
        - lre_get_flags
        - lre_realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:3168,16'
          Dst:             lre_get_flags
        - Src:             'libregexp.c:3195,13'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3195,36'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3200,11'
          Dst:             lre_exec_backtrack
        - Src:             'libregexp.c:3202,5'
          Dst:             lre_realloc
    - functionName:    compute_stack_size
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2391
      functionLinenumberEnd: 2434
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          144
      EdgeCount:       36
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
        - get_u16
      functionUses:    1
      BranchProfiles:
        - Branch String:   'libregexp.c:2405,9'
          Branch Sides:    []
      Callsites:
        - Src:             'libregexp.c:2403,9'
          Dst:             __assert_fail
        - Src:             'libregexp.c:2404,9'
          Dst:             __assert_fail
        - Src:             'libregexp.c:2417,13'
          Dst:             __assert_fail
        - Src:             'libregexp.c:2422,19'
          Dst:             get_u16
        - Src:             'libregexp.c:2427,19'
          Dst:             get_u16
    - functionName:    lre_bytecode_realloc
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2437
      functionLinenumberEnd: 2445
      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:2443,16'
          Dst:             lre_realloc
    - functionName:    lre_compile
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2454
      functionLinenumberEnd: 2543
      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:          172
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - compute_stack_size
        - 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:2475,5'
          Dst:             dbuf_init2
        - Src:             'libregexp.c:2475,5'
          Dst:             lre_bytecode_realloc
        - Src:             'libregexp.c:2476,5'
          Dst:             dbuf_init2
        - Src:             'libregexp.c:2476,5'
          Dst:             lre_realloc
        - Src:             'libregexp.c:2478,5'
          Dst:             dbuf_put_u16
        - Src:             'libregexp.c:2479,5'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:2480,5'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:2481,5'
          Dst:             dbuf_put_u32
        - Src:             'libregexp.c:2488,9'
          Dst:             re_emit_op_u32
        - Src:             'libregexp.c:2489,9'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2490,9'
          Dst:             re_emit_op_u32
        - Src:             'libregexp.c:2492,5'
          Dst:             re_emit_op_u8
        - Src:             'libregexp.c:2494,9'
          Dst:             re_parse_disjunction
        - Src:             'libregexp.c:2496,9'
          Dst:             dbuf_free
        - Src:             'libregexp.c:2497,9'
          Dst:             dbuf_free
        - Src:             'libregexp.c:2498,9'
          Dst:             pstrcpy
        - Src:             'libregexp.c:2503,5'
          Dst:             re_emit_op_u8
        - Src:             'libregexp.c:2505,5'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2508,9'
          Dst:             re_parse_error
        - Src:             'libregexp.c:2512,9'
          Dst:             dbuf_error
        - Src:             'libregexp.c:2513,9'
          Dst:             re_parse_out_of_memory
        - Src:             'libregexp.c:2517,18'
          Dst:             compute_stack_size
        - Src:             'libregexp.c:2519,9'
          Dst:             re_parse_error
        - Src:             'libregexp.c:2525,5'
          Dst:             put_u32
        - Src:             'libregexp.c:2530,9'
          Dst:             dbuf_put
        - Src:             'libregexp.c:2532,17'
          Dst:             lre_get_flags
        - Src:             'libregexp.c:2531,9'
          Dst:             put_u16
        - Src:             'libregexp.c:2534,5'
          Dst:             dbuf_free
    - 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:    3
      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:    3
      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:    1
      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:    5
      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:    0
      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:    8
      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:    6
      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:    0
      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:    2
      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:    1
      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:    1
      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:    4
      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:    5
      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:    0
      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:    0
      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:    0
      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:    2
      BranchProfiles:  []
      Callsites:       []
    - 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:    1
      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: 1922
      functionLinenumberEnd: 2111
      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:1926,5'
          Branch Sides:    []
        - Branch String:   'libunicode.c:2041,25'
          Branch Sides:    []
      Callsites:
        - Src:             'libunicode.c:2101,19'
          Dst:             unicode_sequence_prop1
        - Src:             'libunicode.c:1928,13'
          Dst:             unicode_prop1
        - Src:             'libunicode.c:1939,13'
          Dst:             unicode_prop1
        - Src:             'libunicode.c:1951,13'
          Dst:             unicode_prop1
        - Src:             'libunicode.c:1964,13'
          Dst:             unicode_prop1
        - Src:             'libunicode.c:2004,25'
          Dst:             __assert_fail
        - Src:             'libunicode.c:2086,13'
          Dst:             unicode_prop1
        - Src:             'libunicode.c:2101,19'
          Dst:             unicode_sequence_prop1
        - Src:             'libunicode.c:2101,19'
          Dst:             unicode_sequence_prop1
        - Src:             'libunicode.c:2101,19'
          Dst:             unicode_sequence_prop1
        - Src:             'libunicode.c:2101,19'
          Dst:             unicode_sequence_prop1
        - Src:             'libunicode.c:2101,19'
          Dst:             unicode_sequence_prop1
    - functionName:    unicode_prop1
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1459
      functionLinenumberEnd: 1503
      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:1481,21'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:1497,17'
          Dst:             cr_add_interval
    - functionName:    cr_add_interval
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 75
      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:69,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: 2117
      functionLinenumberEnd: 2123
      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:2119,20'
          Dst:             unicode_find_name
        - Src:             'libunicode.c:2122,12'
          Dst:             unicode_sequence_prop1
    - functionName:    unicode_find_name
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1247
      functionLinenumberEnd: 1271
      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:1254,16'
          Dst:             strlen
        - Src:             'libunicode.c:1257,17'
          Dst:             strchr
        - Src:             'libunicode.c:1259,23'
          Dst:             strlen
        - Src:             'libunicode.c:1262,37'
          Dst:             memcmp
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lre_is_space_non_ascii
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1903
      functionLinenumberEnd: 1916
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         34
      ICount:          121
      EdgeCount:       49
      CyclomaticComplexity: 17
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unicode_prop_ops
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1519
      functionLinenumberEnd: 1592
      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:1529,9'
          Branch Sides:    []
      Callsites:
        - Src:             'libunicode.c:1531,13'
          Dst:             __assert_fail
        - Src:             'libunicode.c:1533,13'
          Dst:             cr_init
        - Src:             'libunicode.c:1534,17'
          Dst:             unicode_general_category1
        - Src:             'libunicode.c:1538,13'
          Dst:             __assert_fail
        - Src:             'libunicode.c:1540,13'
          Dst:             cr_init
        - Src:             'libunicode.c:1541,17'
          Dst:             unicode_prop1
        - Src:             'libunicode.c:1545,13'
          Dst:             __assert_fail
        - Src:             'libunicode.c:1547,13'
          Dst:             cr_init
        - Src:             'libunicode.c:1548,17'
          Dst:             unicode_case1
        - Src:             'libunicode.c:1556,17'
          Dst:             __assert_fail
        - Src:             'libunicode.c:1557,17'
          Dst:             __assert_fail
        - Src:             'libunicode.c:1561,17'
          Dst:             cr_init
        - Src:             'libunicode.c:1563,21'
          Dst:             cr_op
        - Src:             'libunicode.c:1566,17'
          Dst:             cr_free
        - Src:             'libunicode.c:1567,17'
          Dst:             cr_free
        - Src:             'libunicode.c:1573,13'
          Dst:             __assert_fail
        - Src:             'libunicode.c:1574,17'
          Dst:             cr_invert
        - Src:             'libunicode.c:1580,13'
          Dst:             abort
        - Src:             'libunicode.c:1584,5'
          Dst:             __assert_fail
        - Src:             'libunicode.c:1585,11'
          Dst:             cr_copy
        - Src:             'libunicode.c:1586,5'
          Dst:             cr_free
        - Src:             'libunicode.c:1590,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: 1398
      functionLinenumberEnd: 1456
      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:1444,29'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:1451,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: 57
      functionLinenumberEnd: 64
      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:59,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: 1627
      functionLinenumberEnd: 1820
      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:1636,5'
          Branch Sides:    []
      Callsites:
        - Src:             'libunicode.c:1630,16'
          Dst:             unicode_find_name
        - Src:             'libunicode.c:1638,13'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:1642,13'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:1646,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1652,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1659,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1666,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1673,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1682,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1693,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1701,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1708,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1722,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1739,15'
          Dst:             unicode_case1
        - Src:             'libunicode.c:1742,15'
          Dst:             unicode_case1
        - Src:             'libunicode.c:1745,15'
          Dst:             unicode_case1
        - Src:             'libunicode.c:1748,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1755,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1762,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1806,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1816,15'
          Dst:             unicode_prop1
    - functionName:    unicode_general_category
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1608
      functionLinenumberEnd: 1621
      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:1612,14'
          Dst:             unicode_find_name
        - Src:             'libunicode.c:1620,12'
          Dst:             unicode_general_category1
    - functionName:    unicode_script
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1277
      functionLinenumberEnd: 1393
      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:1285,18'
          Dst:             unicode_find_name
        - Src:             'libunicode.c:1293,9'
          Dst:             cr_init
        - Src:             'libunicode.c:1294,9'
          Dst:             cr_init
        - Src:             'libunicode.c:1321,21'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:1329,13'
          Dst:             cr_invert
        - Src:             'libunicode.c:1356,25'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:1362,29'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:1373,17'
          Dst:             cr_invert
        - Src:             'libunicode.c:1375,17'
          Dst:             cr_op
        - Src:             'libunicode.c:1379,17'
          Dst:             cr_op
        - Src:             'libunicode.c:1383,9'
          Dst:             cr_free
        - Src:             'libunicode.c:1384,9'
          Dst:             cr_free
        - Src:             'libunicode.c:1389,9'
          Dst:             cr_free
        - Src:             'libunicode.c:1390,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: 1242
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         44
      ICount:          199
      EdgeCount:       60
      CyclomaticComplexity: 18
      functionsReached:
        - compose_pair
        - dbuf_claim
        - dbuf_error
        - dbuf_init2
        - sort_cc
        - to_nfd_rec
        - unicode_get_cc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:1181,5'
          Dst:             dbuf_init2
        - Src:             'libunicode.c:1182,9'
          Dst:             dbuf_claim
        - Src:             'libunicode.c:1198,5'
          Dst:             to_nfd_rec
        - Src:             'libunicode.c:1199,9'
          Dst:             dbuf_error
        - Src:             'libunicode.c:1207,5'
          Dst:             sort_cc
        - Src:             'libunicode.c:1220,19'
          Dst:             unicode_get_cc
        - Src:             'libunicode.c:1223,18'
          Dst:             unicode_get_cc
        - Src:             'libunicode.c:1223,18'
          Dst:             unicode_get_cc
        - Src:             'libunicode.c:1232,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:    1
      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:    2
      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:    0
      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:    0
      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:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:256,24'
          Dst:             lre_case_folding_entry
...
