---
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:    18
      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:    lre_is_space_byte
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lre_is_word_byte
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lre_is_space
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 162
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          26
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - lre_is_space_byte
        - lre_is_space_non_ascii
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './libunicode.h:164,16'
          Dst:             lre_is_space_byte
        - Src:             './libunicode.h:166,16'
          Dst:             lre_is_space_non_ascii
    - functionName:    is_line_terminator
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2617
      functionLinenumberEnd: 2618
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          33
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    stack_realloc
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2751
      functionLinenumberEnd: 2771
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          69
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - lre_realloc
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:2758,21'
          Dst:             lre_realloc
        - Src:             'libregexp.c:2764,21'
          Dst:             lre_realloc
    - functionName:    lre_poll_timeout
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2741
      functionLinenumberEnd: 2748
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          39
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - lre_check_timeout
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:2744,13'
          Dst:             lre_check_timeout
    - functionName:    re_emit_op_u16
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 668
      functionLinenumberEnd: 671
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_put_u16
        - dbuf_putc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:669,5'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:670,5'
          Dst:             dbuf_put_u16
    - functionName:    dbuf_putc
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 284
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __dbuf_putc
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             './cutils.h:279,16'
          Dst:             __dbuf_putc
    - functionName:    dbuf_put_u16
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 287
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __dbuf_put_u16
        - put_u16
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './cutils.h:289,16'
          Dst:             __dbuf_put_u16
        - Src:             './cutils.h:291,9'
          Dst:             put_u16
    - functionName:    put_u16
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    re_string_cmp_len
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1262
      functionLinenumberEnd: 1265
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    re_emit_range
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1226
      functionLinenumberEnd: 1259
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          145
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - dbuf_put_u16
        - dbuf_put_u32
        - re_emit_op_u16
        - re_emit_op_u32
        - re_parse_error
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:1232,16'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1234,9'
          Dst:             re_emit_op_u32
        - Src:             'libregexp.c:1242,13'
          Dst:             re_emit_op_u16
        - Src:             'libregexp.c:1244,17'
          Dst:             dbuf_put_u16
        - Src:             'libregexp.c:1248,17'
          Dst:             dbuf_put_u16
        - Src:             'libregexp.c:1251,13'
          Dst:             re_emit_op_u16
        - Src:             'libregexp.c:1253,17'
          Dst:             dbuf_put_u32
        - Src:             'libregexp.c:1254,17'
          Dst:             dbuf_put_u32
    - functionName:    re_parse_error
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 674
      functionLinenumberEnd: 680
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vsnprintf
      functionUses:    35
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:677,5'
          Dst:             vsnprintf
    - functionName:    re_emit_op_u32
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 623
      functionLinenumberEnd: 628
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_put_u32
        - dbuf_putc
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:625,5'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:627,5'
          Dst:             dbuf_put_u32
    - functionName:    dbuf_put_u32
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 298
      functionLinenumberEnd: 306
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __dbuf_put_u32
        - put_u32
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             './cutils.h:300,16'
          Dst:             __dbuf_put_u32
        - Src:             './cutils.h:302,9'
          Dst:             put_u32
    - functionName:    put_u32
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    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: 151
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          90
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    re_string_find
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - re_string_find2
        - re_string_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:287,10'
          Dst:             re_string_hash
        - Src:             'libregexp.c:288,12'
          Dst:             re_string_find2
    - functionName:    re_string_find2
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          217
      EdgeCount:       54
      CyclomaticComplexity: 16
      functionsReached:
        - lre_realloc
        - max_int
        - memcmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:236,18'
          Dst:             memcmp
        - Src:             'libregexp.c:249,25'
          Dst:             max_int
        - Src:             'libregexp.c:251,26'
          Dst:             lre_realloc
        - Src:             'libregexp.c:264,9'
          Dst:             lre_realloc
        - Src:             'libregexp.c:271,9'
          Dst:             lre_realloc
    - functionName:    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:    5
      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: 293
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          33
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - cr_union_interval
        - re_string_find
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:295,16'
          Dst:             cr_union_interval
        - Src:             'libregexp.c:297,9'
          Dst:             re_string_find
    - functionName:    cr_union_interval
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cr_op1
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './libunicode.h:91,12'
          Dst:             cr_op1
    - functionName:    re_string_list_canonicalize
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 353
      functionLinenumberEnd: 388
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          125
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - cr_regexp_canonicalize
        - lre_canonicalize
        - re_string_add
        - re_string_list_free
        - re_string_list_init
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:354,9'
          Dst:             cr_regexp_canonicalize
        - Src:             'libregexp.c:362,9'
          Dst:             re_string_list_init
        - Src:             'libregexp.c:377,33'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:379,21'
          Dst:             re_string_add
        - Src:             'libregexp.c:0,0'
          Dst:             re_string_list_free
    - functionName:    re_string_list_init
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cr_init
        - lre_realloc
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:162,5'
          Dst:             cr_init
        - Src:             'libregexp.c:162,5'
          Dst:             lre_realloc
    - functionName:    re_string_list_free
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          69
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - cr_free
        - lre_realloc
      functionUses:    21
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:176,13'
          Dst:             lre_realloc
        - Src:             'libregexp.c:179,5'
          Dst:             lre_realloc
        - Src:             'libregexp.c:181,5'
          Dst:             cr_free
    - functionName:    seq_prop_cb
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 864
      functionLinenumberEnd: 867
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - re_string_add
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:866,5'
          Dst:             re_string_add
    - functionName:    is_unicode_char
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 855
      functionLinenumberEnd: 859
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          55
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cr_add_point
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - cr_realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './libunicode.h:64,13'
          Dst:             cr_realloc
    - functionName:    parse_class_string_disjunction
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 995
      functionLinenumberEnd: 1039
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          123
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - dbuf_free
        - dbuf_init2
        - dbuf_put_u32
        - get_class_atom
        - lre_realloc
        - re_parse_error
        - re_parse_out_of_memory
        - re_string_add
        - re_string_list_canonicalize
        - re_string_list_free
        - re_string_list_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:1002,16'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1004,5'
          Dst:             dbuf_init2
        - Src:             'libregexp.c:1004,5'
          Dst:             lre_realloc
        - Src:             'libregexp.c:1005,5'
          Dst:             re_string_list_init
        - Src:             'libregexp.c:1011,17'
          Dst:             get_class_atom
        - Src:             'libregexp.c:1014,17'
          Dst:             dbuf_put_u32
        - Src:             'libregexp.c:1019,13'
          Dst:             re_string_add
        - Src:             'libregexp.c:1028,13'
          Dst:             re_string_list_canonicalize
        - Src:             'libregexp.c:1032,5'
          Dst:             dbuf_free
        - Src:             'libregexp.c:0,0'
          Dst:             re_parse_out_of_memory
        - Src:             'libregexp.c:1036,5'
          Dst:             dbuf_free
        - Src:             'libregexp.c:1037,5'
          Dst:             re_string_list_free
    - functionName:    get_class_atom
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1046
      functionLinenumberEnd: 1223
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         137
      ICount:          567
      EdgeCount:       166
      CyclomaticComplexity: 31
      functionsReached:
        - cr_init_char_range
        - lre_parse_escape
        - parse_class_string_disjunction
        - parse_unicode_property
        - re_parse_error
        - unicode_from_utf8
      functionUses:    5
      BranchProfiles:
        - Branch String:   'libregexp.c:1054,5'
          Branch Sides:    []
        - Branch String:   'libregexp.c:1060,9'
          Branch Sides:    []
      Callsites:
        - Src:             'libregexp.c:1081,17'
          Dst:             cr_init_char_range
        - Src:             'libregexp.c:1126,21'
          Dst:             parse_unicode_property
        - Src:             'libregexp.c:1135,21'
          Dst:             parse_class_string_disjunction
        - Src:             'libregexp.c:1144,19'
          Dst:             lre_parse_escape
        - Src:             'libregexp.c:1150,28'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1162,20'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1188,20'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1203,20'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1211,17'
          Dst:             unicode_from_utf8
        - Src:             'libregexp.c:1214,24'
          Dst:             re_parse_error
    - functionName:    re_parse_out_of_memory
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 683
      functionLinenumberEnd: 684
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - re_parse_error
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:684,12'
          Dst:             re_parse_error
    - functionName:    cr_init_char_range
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 439
      functionLinenumberEnd: 460
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          74
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - cr_add_point
        - cr_invert
        - re_string_list_free
        - re_string_list_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:447,5'
          Dst:             re_string_list_init
        - Src:             'libregexp.c:449,13'
          Dst:             cr_add_point
        - Src:             'libregexp.c:453,13'
          Dst:             cr_invert
        - Src:             'libregexp.c:458,5'
          Dst:             re_string_list_free
    - functionName:    parse_unicode_property
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 872
      functionLinenumberEnd: 987
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         88
      ICount:          402
      EdgeCount:       124
      CyclomaticComplexity: 38
      functionsReached:
        - cr_free
        - cr_init
        - cr_invert
        - is_unicode_char
        - lre_realloc
        - re_parse_error
        - re_parse_out_of_memory
        - re_string_list_canonicalize
        - re_string_list_free
        - re_string_list_init
        - seq_prop_cb
        - strcmp
        - unicode_general_category
        - unicode_prop
        - unicode_script
        - unicode_sequence_prop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:884,12'
          Dst:             is_unicode_char
        - Src:             'libregexp.c:881,16'
          Dst:             re_parse_error
        - Src:             'libregexp.c:884,12'
          Dst:             is_unicode_char
        - Src:             'libregexp.c:893,16'
          Dst:             is_unicode_char
        - Src:             'libregexp.c:895,24'
          Dst:             re_parse_error
        - Src:             'libregexp.c:893,16'
          Dst:             is_unicode_char
        - Src:             'libregexp.c:901,16'
          Dst:             re_parse_error
        - Src:             'libregexp.c:905,10'
          Dst:             strcmp
        - Src:             'libregexp.c:905,37'
          Dst:             strcmp
        - Src:             'libregexp.c:908,17'
          Dst:             strcmp
        - Src:             'libregexp.c:908,55'
          Dst:             strcmp
        - Src:             'libregexp.c:911,9'
          Dst:             re_string_list_init
        - Src:             'libregexp.c:912,15'
          Dst:             unicode_script
        - Src:             'libregexp.c:914,13'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:916,24'
          Dst:             re_parse_error
        - Src:             'libregexp.c:920,17'
          Dst:             strcmp
        - Src:             'libregexp.c:920,54'
          Dst:             strcmp
        - Src:             'libregexp.c:921,9'
          Dst:             re_string_list_init
        - Src:             'libregexp.c:922,15'
          Dst:             unicode_general_category
        - Src:             'libregexp.c:924,13'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:926,24'
          Dst:             re_parse_error
        - Src:             'libregexp.c:931,9'
          Dst:             re_string_list_init
        - Src:             'libregexp.c:932,15'
          Dst:             unicode_general_category
        - Src:             'libregexp.c:934,13'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:938,19'
          Dst:             unicode_prop
        - Src:             'libregexp.c:940,17'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:946,13'
          Dst:             cr_init
        - Src:             'libregexp.c:946,13'
          Dst:             lre_realloc
        - Src:             'libregexp.c:947,19'
          Dst:             unicode_sequence_prop
        - Src:             'libregexp.c:947,19'
          Dst:             seq_prop_cb
        - Src:             'libregexp.c:948,13'
          Dst:             cr_free
        - Src:             'libregexp.c:950,17'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:958,16'
          Dst:             re_parse_error
        - Src:             'libregexp.c:966,13'
          Dst:             re_string_list_canonicalize
        - Src:             'libregexp.c:967,13'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:972,13'
          Dst:             cr_invert
        - Src:             'libregexp.c:973,13'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:978,13'
          Dst:             re_string_list_canonicalize
        - Src:             'libregexp.c:979,13'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:986,12'
          Dst:             re_parse_out_of_memory
    - functionName:    lre_parse_escape
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 736
      functionLinenumberEnd: 850
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         77
      ICount:          370
      EdgeCount:       102
      CyclomaticComplexity: 27
      functionsReached:
        - from_hex
        - from_surrogate
        - is_digit
        - is_hi_surrogate
        - is_lo_surrogate
      functionUses:    2
      BranchProfiles:
        - Branch String:   'libregexp.c:742,5'
          Branch Sides:    []
      Callsites:
        - Src:             'libregexp.c:765,18'
          Dst:             from_hex
        - Src:             'libregexp.c:768,18'
          Dst:             from_hex
        - Src:             'libregexp.c:783,25'
          Dst:             from_hex
        - Src:             'libregexp.c:796,25'
          Dst:             from_hex
        - Src:             'libregexp.c:796,25'
          Dst:             from_hex
        - Src:             'libregexp.c:796,25'
          Dst:             from_hex
        - Src:             'libregexp.c:796,25'
          Dst:             from_hex
        - Src:             'libregexp.c:802,21'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:808,29'
          Dst:             from_hex
        - Src:             'libregexp.c:808,29'
          Dst:             from_hex
        - Src:             'libregexp.c:808,29'
          Dst:             from_hex
        - Src:             'libregexp.c:808,29'
          Dst:             from_hex
        - Src:             'libregexp.c:813,35'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:815,29'
          Dst:             from_surrogate
        - Src:             'libregexp.c:826,27'
          Dst:             is_digit
    - functionName:    from_hex
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 366
      functionLinenumberEnd: 375
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          54
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_hi_surrogate
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 341
      functionLinenumberEnd: 342
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    19
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_lo_surrogate
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 346
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    19
      BranchProfiles:  []
      Callsites:       []
    - functionName:    from_surrogate
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    16
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_digit
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          19
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    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: 1357
      functionLinenumberEnd: 1380
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          76
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - cr_union_interval
        - get_class_atom
        - lre_canonicalize
        - re_parse_nested_class
        - re_string_list_free
        - re_string_list_init
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:1362,13'
          Dst:             re_parse_nested_class
        - Src:             'libregexp.c:1365,14'
          Dst:             get_class_atom
        - Src:             'libregexp.c:1370,13'
          Dst:             re_string_list_init
        - Src:             'libregexp.c:1372,22'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:1373,17'
          Dst:             cr_union_interval
        - Src:             'libregexp.c:1374,17'
          Dst:             re_string_list_free
    - functionName:    re_parse_nested_class
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1383
      functionLinenumberEnd: 1537
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         124
      ICount:          522
      EdgeCount:       173
      CyclomaticComplexity: 51
      functionsReached:
        - cr_add_interval
        - cr_free
        - cr_init
        - cr_invert
        - cr_op1
        - cr_regexp_canonicalize
        - cr_union_interval
        - get_class_atom
        - lre_canonicalize
        - lre_check_stack_overflow
        - lre_realloc
        - re_parse_class_set_operand
        - re_parse_error
        - re_parse_nested_class
        - re_parse_out_of_memory
        - re_string_list_free
        - re_string_list_init
        - re_string_list_op
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:1390,9'
          Dst:             lre_check_stack_overflow
        - Src:             'libregexp.c:1391,16'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1393,5'
          Dst:             re_string_list_init
        - Src:             'libregexp.c:1409,17'
          Dst:             re_parse_nested_class
        - Src:             'libregexp.c:1413,18'
          Dst:             get_class_atom
        - Src:             'libregexp.c:1422,25'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:1428,22'
          Dst:             get_class_atom
        - Src:             'libregexp.c:1432,21'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:1442,21'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1447,21'
          Dst:             cr_init
        - Src:             'libregexp.c:1447,21'
          Dst:             lre_realloc
        - Src:             'libregexp.c:1448,25'
          Dst:             cr_add_interval
        - Src:             'libregexp.c:1449,25'
          Dst:             cr_regexp_canonicalize
        - Src:             'libregexp.c:1450,25'
          Dst:             cr_op1
        - Src:             'libregexp.c:1454,21'
          Dst:             cr_free
        - Src:             'libregexp.c:1451,25'
          Dst:             cr_free
        - Src:             'libregexp.c:1456,25'
          Dst:             cr_union_interval
        - Src:             'libregexp.c:1464,27'
          Dst:             re_string_list_op
        - Src:             'libregexp.c:1465,21'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:1470,30'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:1471,25'
          Dst:             cr_union_interval
        - Src:             'libregexp.c:1487,25'
          Dst:             re_parse_class_set_operand
        - Src:             'libregexp.c:1489,27'
          Dst:             re_string_list_op
        - Src:             'libregexp.c:1490,21'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:1506,25'
          Dst:             re_parse_class_set_operand
        - Src:             'libregexp.c:1503,25'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1508,27'
          Dst:             re_string_list_op
        - Src:             'libregexp.c:1509,21'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:1525,13'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1528,13'
          Dst:             cr_invert
        - Src:             'libregexp.c:1533,5'
          Dst:             re_parse_out_of_memory
        - Src:             'libregexp.c:1535,5'
          Dst:             re_string_list_free
    - functionName:    cr_add_interval
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - cr_realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './libunicode.h:74,13'
          Dst:             cr_realloc
    - functionName:    re_string_list_op
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 304
      functionLinenumberEnd: 349
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          189
      EdgeCount:       50
      CyclomaticComplexity: 11
      functionsReached:
        - abort
        - cr_op1
        - lre_realloc
        - re_string_find2
      functionUses:    3
      BranchProfiles:
        - Branch String:   'libregexp.c:311,5'
          Branch Sides:    []
      Callsites:
        - Src:             'libregexp.c:308,9'
          Dst:             cr_op1
        - Src:             'libregexp.c:316,25'
          Dst:             re_string_find2
        - Src:             'libregexp.c:330,23'
          Dst:             re_string_find2
        - Src:             'libregexp.c:337,21'
          Dst:             lre_realloc
        - Src:             'libregexp.c:346,9'
          Dst:             abort
    - functionName:    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: 149
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lre_is_id_start_byte
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 145
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lre_js_is_ident_next
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          41
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - lre_is_id_continue
        - lre_is_id_continue_byte
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './libunicode.h:183,16'
          Dst:             lre_is_id_continue_byte
        - Src:             './libunicode.h:189,16'
          Dst:             lre_is_id_continue
    - functionName:    lre_js_is_ident_first
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          26
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - lre_is_id_start
        - lre_is_id_start_byte
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './libunicode.h:171,16'
          Dst:             lre_is_id_start_byte
        - Src:             './libunicode.h:174,16'
          Dst:             lre_is_id_start
    - functionName:    re_emit_goto_u8
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 641
      functionLinenumberEnd: 647
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_put_u32
        - dbuf_putc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:643,5'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:644,5'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:646,5'
          Dst:             dbuf_put_u32
    - functionName:    re_emit_goto_u8_u32
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 651
      functionLinenumberEnd: 658
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_put_u32
        - dbuf_putc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:653,5'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:654,5'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:655,5'
          Dst:             dbuf_put_u32
        - Src:             'libregexp.c:657,5'
          Dst:             dbuf_put_u32
    - functionName:    re_emit_goto
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 632
      functionLinenumberEnd: 637
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_put_u32
        - dbuf_putc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:634,5'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:636,5'
          Dst:             dbuf_put_u32
    - functionName:    re_need_check_adv_and_capture_init
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1559
      functionLinenumberEnd: 1627
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          189
      EdgeCount:       46
      CyclomaticComplexity: 3
      functionsReached:
        - get_u16
      functionUses:    1
      BranchProfiles:
        - Branch String:   'libregexp.c:1570,9'
          Branch Sides:    []
      Callsites:
        - Src:             'libregexp.c:1573,19'
          Dst:             get_u16
        - Src:             'libregexp.c:1579,19'
          Dst:             get_u16
    - functionName:    get_u16
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    re_emit_char
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1269
      functionLinenumberEnd: 1274
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - re_emit_op_u16
        - re_emit_op_u32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:1271,9'
          Dst:             re_emit_op_u16
        - Src:             'libregexp.c:1273,9'
          Dst:             re_emit_op_u32
    - functionName:    re_emit_string_list
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1277
      functionLinenumberEnd: 1352
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         69
      ICount:          318
      EdgeCount:       92
      CyclomaticComplexity: 25
      functionsReached:
        - __assert_fail
        - get_u32
        - lre_realloc
        - put_u32
        - re_emit_char
        - re_emit_op_u32
        - re_emit_range
        - re_parse_out_of_memory
        - re_string_cmp_len
        - rqsort
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:1285,13'
          Dst:             re_emit_range
        - Src:             'libregexp.c:1290,15'
          Dst:             lre_realloc
        - Src:             'libregexp.c:1292,13'
          Dst:             re_parse_out_of_memory
        - Src:             'libregexp.c:1306,9'
          Dst:             __assert_fail
        - Src:             'libregexp.c:1308,9'
          Dst:             rqsort
        - Src:             'libregexp.c:1308,9'
          Dst:             re_string_cmp_len
        - Src:             'libregexp.c:1315,29'
          Dst:             re_emit_op_u32
        - Src:             'libregexp.c:1319,17'
          Dst:             re_emit_char
        - Src:             'libregexp.c:1322,34'
          Dst:             re_emit_op_u32
        - Src:             'libregexp.c:1323,17'
          Dst:             put_u32
        - Src:             'libregexp.c:1308,9'
          Dst:             rqsort
        - Src:             'libregexp.c:1308,9'
          Dst:             re_string_cmp_len
        - Src:             'libregexp.c:1334,17'
          Dst:             re_emit_range
        - Src:             'libregexp.c:1331,29'
          Dst:             re_emit_op_u32
        - Src:             'libregexp.c:1334,17'
          Dst:             re_emit_range
        - Src:             'libregexp.c:1335,17'
          Dst:             lre_realloc
        - Src:             'libregexp.c:1339,17'
          Dst:             put_u32
        - Src:             'libregexp.c:1344,28'
          Dst:             get_u32
        - Src:             'libregexp.c:1345,13'
          Dst:             put_u32
        - Src:             'libregexp.c:1349,9'
          Dst:             lre_realloc
    - functionName:    __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:    16
      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:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    re_parse_char_class
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1540
      functionLinenumberEnd: 1552
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          38
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - re_emit_string_list
        - re_parse_nested_class
        - re_string_list_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:1543,9'
          Dst:             re_parse_nested_class
        - Src:             'libregexp.c:1545,9'
          Dst:             re_emit_string_list
        - Src:             'libregexp.c:0,0'
          Dst:             re_string_list_free
    - functionName:    re_count_captures
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1744
      functionLinenumberEnd: 1749
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - re_parse_captures
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:1746,34'
          Dst:             re_parse_captures
    - functionName:    re_parse_captures
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1689
      functionLinenumberEnd: 1741
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         49
      ICount:          216
      EdgeCount:       65
      CyclomaticComplexity: 18
      functionsReached:
        - dbuf_putc
        - re_parse_group_name
        - strcmp
      functionUses:    3
      BranchProfiles:
        - Branch String:   'libregexp.c:1698,9'
          Branch Sides:    []
      Callsites:
        - Src:             'libregexp.c:1706,29'
          Dst:             re_parse_group_name
        - Src:             'libregexp.c:1707,34'
          Dst:             strcmp
        - Src:             'libregexp.c:1709,37'
          Dst:             dbuf_putc
    - functionName:    re_parse_group_name
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1632
      functionLinenumberEnd: 1683
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         35
      ICount:          165
      EdgeCount:       48
      CyclomaticComplexity: 15
      functionsReached:
        - from_surrogate
        - is_hi_surrogate
        - is_lo_surrogate
        - lre_js_is_ident_first
        - lre_js_is_ident_next
        - lre_parse_escape
        - unicode_from_utf8
        - unicode_to_utf8
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:1645,17'
          Dst:             lre_parse_escape
        - Src:             'libregexp.c:1649,17'
          Dst:             unicode_from_utf8
        - Src:             'libregexp.c:1650,17'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:1651,21'
          Dst:             unicode_from_utf8
        - Src:             'libregexp.c:1652,21'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:1653,25'
          Dst:             from_surrogate
        - Src:             'libregexp.c:1663,18'
          Dst:             lre_js_is_ident_first
        - Src:             'libregexp.c:1666,18'
          Dst:             lre_js_is_ident_next
        - Src:             'libregexp.c:1674,18'
          Dst:             unicode_to_utf8
    - functionName:    find_group_name
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1760
      functionLinenumberEnd: 1783
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          79
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - dbuf_putc
        - memcmp
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:1769,16'
          Dst:             strlen
        - Src:             'libregexp.c:1773,15'
          Dst:             strlen
        - Src:             'libregexp.c:1774,32'
          Dst:             memcmp
        - Src:             'libregexp.c:1776,17'
          Dst:             dbuf_putc
    - functionName:    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:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    re_has_named_captures
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1753
      functionLinenumberEnd: 1756
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - re_count_captures
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:1755,9'
          Dst:             re_count_captures
    - functionName:    is_duplicate_group_name
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1786
      functionLinenumberEnd: 1806
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          76
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - memcmp
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:1795,16'
          Dst:             strlen
        - Src:             'libregexp.c:1797,15'
          Dst:             strlen
        - Src:             'libregexp.c:1798,32'
          Dst:             memcmp
    - functionName:    update_modifier
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1837
      functionLinenumberEnd: 1842
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          30
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    re_parse_modifiers
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1811
      functionLinenumberEnd: 1833
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          59
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - re_parse_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:1827,20'
          Dst:             re_parse_error
    - functionName:    re_parse_expect
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 715
      functionLinenumberEnd: 723
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - re_parse_error
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:719,16'
          Dst:             re_parse_error
    - functionName:    parse_digits
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 690
      functionLinenumberEnd: 712
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          68
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    re_parse_term
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1846
      functionLinenumberEnd: 2370
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         307
      ICount:          1625
      EdgeCount:       417
      CyclomaticComplexity: 112
      functionsReached:
        - dbuf_error
        - dbuf_insert
        - dbuf_put
        - dbuf_putc
        - find_group_name
        - get_class_atom
        - is_digit
        - is_duplicate_group_name
        - lre_canonicalize
        - parse_digits
        - put_u32
        - re_count_captures
        - re_emit_char
        - re_emit_goto
        - re_emit_goto_u8
        - re_emit_goto_u8_u32
        - re_emit_op
        - re_emit_op_u32
        - re_emit_op_u8
        - re_emit_string_list
        - re_has_named_captures
        - re_need_check_adv_and_capture_init
        - re_parse_captures
        - re_parse_char_class
        - re_parse_disjunction
        - re_parse_error
        - re_parse_expect
        - re_parse_group_name
        - re_parse_modifiers
        - re_parse_out_of_memory
        - re_string_list_free
        - strlen
        - update_modifier
      functionUses:    1
      BranchProfiles:
        - Branch String:   'libregexp.c:1856,5'
          Branch Sides:    []
        - Branch String:   'libregexp.c:2031,9'
          Branch Sides:    []
        - Branch String:   'libregexp.c:2199,9'
          Branch Sides:    []
      Callsites:
        - Src:             'libregexp.c:1859,9'
          Dst:             re_emit_op
        - Src:             'libregexp.c:1863,9'
          Dst:             re_emit_op
        - Src:             'libregexp.c:1870,13'
          Dst:             re_emit_op
        - Src:             'libregexp.c:1871,9'
          Dst:             re_emit_op
        - Src:             'libregexp.c:1873,13'
          Dst:             re_emit_op
        - Src:             'libregexp.c:1877,20'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1878,21'
          Dst:             is_digit
        - Src:             'libregexp.c:1885,13'
          Dst:             parse_digits
        - Src:             'libregexp.c:1888,21'
          Dst:             is_digit
        - Src:             'libregexp.c:1889,21'
          Dst:             parse_digits
        - Src:             'libregexp.c:1900,16'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1908,21'
          Dst:             re_parse_disjunction
        - Src:             'libregexp.c:1911,21'
          Dst:             re_parse_expect
        - Src:             'libregexp.c:1918,28'
          Dst:             re_parse_modifiers
        - Src:             'libregexp.c:1923,35'
          Dst:             re_parse_modifiers
        - Src:             'libregexp.c:1929,28'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1931,21'
          Dst:             re_parse_expect
        - Src:             'libregexp.c:1936,34'
          Dst:             update_modifier
        - Src:             'libregexp.c:1937,33'
          Dst:             update_modifier
        - Src:             'libregexp.c:1938,29'
          Dst:             update_modifier
        - Src:             'libregexp.c:1943,21'
          Dst:             re_parse_disjunction
        - Src:             'libregexp.c:1946,21'
          Dst:             re_parse_expect
        - Src:             'libregexp.c:1970,23'
          Dst:             re_emit_op_u32
        - Src:             'libregexp.c:1972,21'
          Dst:             re_parse_disjunction
        - Src:             'libregexp.c:1975,21'
          Dst:             re_parse_expect
        - Src:             'libregexp.c:1977,17'
          Dst:             re_emit_op
        - Src:             'libregexp.c:1979,21'
          Dst:             dbuf_error
        - Src:             'libregexp.c:1981,17'
          Dst:             put_u32
        - Src:             'libregexp.c:1984,21'
          Dst:             re_parse_group_name
        - Src:             'libregexp.c:1986,28'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1991,21'
          Dst:             is_duplicate_group_name
        - Src:             'libregexp.c:1992,28'
          Dst:             re_parse_error
        - Src:             'libregexp.c:1996,26'
          Dst:             strlen
        - Src:             'libregexp.c:1995,17'
          Dst:             dbuf_put
        - Src:             'libregexp.c:1997,17'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:2001,24'
          Dst:             re_parse_error
        - Src:             'libregexp.c:2007,13'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:2008,13'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:2011,24'
          Dst:             re_parse_error
        - Src:             'libregexp.c:2015,13'
          Dst:             re_emit_op_u8
        - Src:             'libregexp.c:2019,17'
          Dst:             re_parse_disjunction
        - Src:             'libregexp.c:2023,13'
          Dst:             re_emit_op_u8
        - Src:             'libregexp.c:2026,17'
          Dst:             re_parse_expect
        - Src:             'libregexp.c:0,0'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2052,42'
          Dst:             re_has_named_captures
        - Src:             'libregexp.c:2058,21'
          Dst:             re_parse_group_name
        - Src:             'libregexp.c:2060,42'
          Dst:             re_has_named_captures
        - Src:             'libregexp.c:2066,21'
          Dst:             find_group_name
        - Src:             'libregexp.c:2070,25'
          Dst:             re_parse_captures
        - Src:             'libregexp.c:2072,46'
          Dst:             re_has_named_captures
        - Src:             'libregexp.c:2083,17'
          Dst:             re_emit_op_u8
        - Src:             'libregexp.c:2085,21'
          Dst:             re_parse_captures
        - Src:             'libregexp.c:2087,21'
          Dst:             find_group_name
        - Src:             'libregexp.c:0,0'
          Dst:             re_parse_error
        - Src:             'libregexp.c:2096,21'
          Dst:             is_digit
        - Src:             'libregexp.c:2097,28'
          Dst:             re_parse_error
        - Src:             'libregexp.c:2115,21'
          Dst:             parse_digits
        - Src:             'libregexp.c:2116,61'
          Dst:             re_count_captures
        - Src:             'libregexp.c:2135,28'
          Dst:             re_parse_error
        - Src:             'libregexp.c:2140,17'
          Dst:             re_emit_op_u8
        - Src:             'libregexp.c:2141,17'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:2153,13'
          Dst:             re_parse_char_class
        - Src:             'libregexp.c:2152,13'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2153,13'
          Dst:             re_parse_char_class
        - Src:             'libregexp.c:2156,13'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2161,20'
          Dst:             re_parse_error
        - Src:             'libregexp.c:2165,13'
          Dst:             get_class_atom
        - Src:             'libregexp.c:2172,13'
          Dst:             re_emit_op
        - Src:             'libregexp.c:0,0'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2183,13'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:2181,23'
          Dst:             re_emit_string_list
        - Src:             'libregexp.c:2183,13'
          Dst:             re_string_list_free
        - Src:             'libregexp.c:2188,21'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:2189,13'
          Dst:             re_emit_char
        - Src:             'libregexp.c:2192,13'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2220,22'
          Dst:             is_digit
        - Src:             'libregexp.c:2226,29'
          Dst:             parse_digits
        - Src:             'libregexp.c:2230,25'
          Dst:             is_digit
        - Src:             'libregexp.c:2231,37'
          Dst:             parse_digits
        - Src:             'libregexp.c:2234,36'
          Dst:             re_parse_error
        - Src:             'libregexp.c:2245,21'
          Dst:             re_parse_expect
        - Src:             'libregexp.c:2266,21'
          Dst:             re_need_check_adv_and_capture_init
        - Src:             'libregexp.c:2277,25'
          Dst:             dbuf_insert
        - Src:             'libregexp.c:2290,29'
          Dst:             dbuf_insert
        - Src:             'libregexp.c:2300,29'
          Dst:             dbuf_insert
        - Src:             'libregexp.c:2304,25'
          Dst:             put_u32
        - Src:             'libregexp.c:2309,29'
          Dst:             re_emit_op_u8
        - Src:             'libregexp.c:2312,29'
          Dst:             re_emit_goto
        - Src:             'libregexp.c:2314,29'
          Dst:             dbuf_insert
        - Src:             'libregexp.c:2318,25'
          Dst:             put_u32
        - Src:             'libregexp.c:2323,25'
          Dst:             put_u32
        - Src:             'libregexp.c:2330,25'
          Dst:             re_emit_goto_u8_u32
        - Src:             'libregexp.c:2334,21'
          Dst:             re_emit_goto
        - Src:             'libregexp.c:2339,25'
          Dst:             dbuf_insert
        - Src:             'libregexp.c:2345,21'
          Dst:             put_u32
        - Src:             'libregexp.c:2354,25'
          Dst:             re_emit_goto_u8
        - Src:             'libregexp.c:2356,25'
          Dst:             re_emit_goto_u8_u32
        - Src:             'libregexp.c:2369,12'
          Dst:             re_parse_out_of_memory
    - functionName:    re_emit_op
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 617
      functionLinenumberEnd: 619
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_putc
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:618,5'
          Dst:             dbuf_putc
    - functionName:    re_parse_disjunction
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2407
      functionLinenumberEnd: 2440
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          103
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - dbuf_insert
        - lre_check_stack_overflow
        - put_u32
        - re_emit_op_u32
        - re_parse_alternative
        - re_parse_error
        - re_parse_out_of_memory
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:2410,9'
          Dst:             lre_check_stack_overflow
        - Src:             'libregexp.c:2411,16'
          Dst:             re_parse_error
        - Src:             'libregexp.c:2414,9'
          Dst:             re_parse_alternative
        - Src:             'libregexp.c:2422,13'
          Dst:             dbuf_insert
        - Src:             'libregexp.c:2423,20'
          Dst:             re_parse_out_of_memory
        - Src:             'libregexp.c:2426,9'
          Dst:             put_u32
        - Src:             'libregexp.c:2428,15'
          Dst:             re_emit_op_u32
        - Src:             'libregexp.c:2432,13'
          Dst:             re_parse_alternative
        - Src:             'libregexp.c:2437,9'
          Dst:             put_u32
    - functionName:    dbuf_error
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 322
      functionLinenumberEnd: 323
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    re_emit_op_u8
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 662
      functionLinenumberEnd: 665
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_putc
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:663,5'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:664,5'
          Dst:             dbuf_putc
    - functionName:    dbuf_insert
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dbuf_claim
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:125,9'
          Dst:             dbuf_claim
    - functionName:    re_parse_alternative
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2373
      functionLinenumberEnd: 2404
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          88
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - dbuf_claim
        - re_parse_term
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:2386,15'
          Dst:             re_parse_term
        - Src:             'libregexp.c:2394,17'
          Dst:             dbuf_claim
    - functionName:    lre_get_groupnames
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3385
      functionLinenumberEnd: 3391
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_u32
        - lre_get_flags
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:3387,10'
          Dst:             lre_get_flags
        - Src:             'libregexp.c:3389,23'
          Dst:             get_u32
    - functionName:    lre_get_flags
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3378
      functionLinenumberEnd: 3379
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_u16
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:3379,12'
          Dst:             get_u16
    - functionName:    lre_get_capture_count
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3373
      functionLinenumberEnd: 3374
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lre_get_alloc_count
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3367
      functionLinenumberEnd: 3369
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lre_exec_backtrack
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2776
      functionLinenumberEnd: 3321
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         547
      ICount:          2661
      EdgeCount:       747
      CyclomaticComplexity: 202
      functionsReached:
        - __assert_fail
        - abort
        - from_surrogate
        - get_u16
        - get_u32
        - is_hi_surrogate
        - is_line_terminator
        - is_lo_surrogate
        - lre_canonicalize
        - lre_is_space
        - lre_is_word_byte
        - lre_poll_timeout
        - stack_realloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'libregexp.c:2849,9'
          Branch Sides:    []
      Callsites:
        - Src:             'libregexp.c:2871,17'
          Dst:             lre_poll_timeout
        - Src:             'libregexp.c:2928,19'
          Dst:             get_u32
        - Src:             'libregexp.c:2933,19'
          Dst:             get_u16
        - Src:             'libregexp.c:2938,13'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:2938,13'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:2938,13'
          Dst:             from_surrogate
        - Src:             'libregexp.c:2940,21'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:2950,23'
          Dst:             get_u32
        - Src:             'libregexp.c:2958,17'
          Dst:             stack_realloc
        - Src:             'libregexp.c:2969,19'
          Dst:             get_u32
        - Src:             'libregexp.c:2971,13'
          Dst:             stack_realloc
        - Src:             'libregexp.c:2980,19'
          Dst:             get_u32
        - Src:             'libregexp.c:2982,17'
          Dst:             lre_poll_timeout
        - Src:             'libregexp.c:2991,13'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:2991,13'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:2991,13'
          Dst:             from_surrogate
        - Src:             'libregexp.c:2992,18'
          Dst:             is_line_terminator
        - Src:             'libregexp.c:3001,13'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3001,13'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3001,13'
          Dst:             from_surrogate
        - Src:             'libregexp.c:3002,18'
          Dst:             is_line_terminator
        - Src:             'libregexp.c:3008,13'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3008,13'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3008,13'
          Dst:             from_surrogate
        - Src:             'libregexp.c:3009,17'
          Dst:             is_line_terminator
        - Src:             'libregexp.c:3015,13'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3015,13'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3020,13'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3020,13'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3020,13'
          Dst:             from_surrogate
        - Src:             'libregexp.c:3021,18'
          Dst:             lre_is_space
        - Src:             'libregexp.c:3027,13'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3027,13'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3027,13'
          Dst:             from_surrogate
        - Src:             'libregexp.c:3028,17'
          Dst:             lre_is_space
        - Src:             'libregexp.c:3034,13'
          Dst:             __assert_fail
        - Src:             'libregexp.c:3036,13'
          Dst:             stack_realloc
        - Src:             'libregexp.c:3044,17'
          Dst:             __assert_fail
        - Src:             'libregexp.c:3045,17'
          Dst:             stack_realloc
        - Src:             'libregexp.c:3048,21'
          Dst:             stack_realloc
        - Src:             'libregexp.c:3050,21'
          Dst:             stack_realloc
        - Src:             'libregexp.c:3057,19'
          Dst:             get_u32
        - Src:             'libregexp.c:3059,13'
          Dst:             stack_realloc
        - Src:             'libregexp.c:3065,23'
          Dst:             get_u32
        - Src:             'libregexp.c:3069,17'
          Dst:             stack_realloc
        - Src:             'libregexp.c:3072,25'
          Dst:             lre_poll_timeout
        - Src:             'libregexp.c:3085,25'
          Dst:             get_u32
        - Src:             'libregexp.c:3086,23'
          Dst:             get_u32
        - Src:             'libregexp.c:3091,17'
          Dst:             stack_realloc
        - Src:             'libregexp.c:3096,25'
          Dst:             lre_poll_timeout
        - Src:             'libregexp.c:3116,25'
          Dst:             stack_realloc
        - Src:             'libregexp.c:3130,13'
          Dst:             stack_realloc
        - Src:             'libregexp.c:3150,21'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3150,21'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3150,21'
          Dst:             from_surrogate
        - Src:             'libregexp.c:3152,31'
          Dst:             lre_is_word_byte
        - Src:             'libregexp.c:3161,21'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3161,21'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3161,21'
          Dst:             from_surrogate
        - Src:             'libregexp.c:3163,31'
          Dst:             lre_is_word_byte
        - Src:             'libregexp.c:3200,33'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3200,33'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3200,33'
          Dst:             from_surrogate
        - Src:             'libregexp.c:3201,33'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3201,33'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3201,33'
          Dst:             from_surrogate
        - Src:             'libregexp.c:3203,42'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:3204,42'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:3214,33'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3214,33'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3214,33'
          Dst:             from_surrogate
        - Src:             'libregexp.c:3215,33'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3215,33'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3215,33'
          Dst:             from_surrogate
        - Src:             'libregexp.c:3217,42'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:3218,42'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:3235,21'
          Dst:             get_u16
        - Src:             'libregexp.c:3239,17'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3239,17'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3239,17'
          Dst:             from_surrogate
        - Src:             'libregexp.c:3241,25'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:3244,23'
          Dst:             get_u16
        - Src:             'libregexp.c:3248,24'
          Dst:             get_u16
        - Src:             'libregexp.c:3256,27'
          Dst:             get_u16
        - Src:             'libregexp.c:3257,28'
          Dst:             get_u16
        - Src:             'libregexp.c:3276,21'
          Dst:             get_u16
        - Src:             'libregexp.c:3280,17'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3280,17'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3280,17'
          Dst:             from_surrogate
        - Src:             'libregexp.c:3282,25'
          Dst:             lre_canonicalize
        - Src:             'libregexp.c:3285,23'
          Dst:             get_u32
        - Src:             'libregexp.c:3289,24'
          Dst:             get_u32
        - Src:             'libregexp.c:3294,27'
          Dst:             get_u32
        - Src:             'libregexp.c:3295,28'
          Dst:             get_u32
        - Src:             'libregexp.c:3312,13'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3312,13'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3318,13'
          Dst:             abort
    - functionName:    lre_exec
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3329
      functionLinenumberEnd: 3364
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          144
      EdgeCount:       34
      CyclomaticComplexity: 11
      functionsReached:
        - is_hi_surrogate
        - is_lo_surrogate
        - lre_exec_backtrack
        - lre_get_flags
        - lre_realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:3334,16'
          Dst:             lre_get_flags
        - Src:             'libregexp.c:3354,13'
          Dst:             is_lo_surrogate
        - Src:             'libregexp.c:3354,36'
          Dst:             is_hi_surrogate
        - Src:             'libregexp.c:3359,11'
          Dst:             lre_exec_backtrack
        - Src:             'libregexp.c:3362,9'
          Dst:             lre_realloc
    - functionName:    compute_register_count
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2445
      functionLinenumberEnd: 2505
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         45
      ICount:          203
      EdgeCount:       48
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
        - get_u16
      functionUses:    1
      BranchProfiles:
        - Branch String:   'libregexp.c:2459,9'
          Branch Sides:    []
      Callsites:
        - Src:             'libregexp.c:2457,9'
          Dst:             __assert_fail
        - Src:             'libregexp.c:2458,9'
          Dst:             __assert_fail
        - Src:             'libregexp.c:2474,13'
          Dst:             __assert_fail
        - Src:             'libregexp.c:2480,13'
          Dst:             __assert_fail
        - Src:             'libregexp.c:2486,19'
          Dst:             get_u16
        - Src:             'libregexp.c:2491,19'
          Dst:             get_u16
    - functionName:    lre_bytecode_realloc
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2508
      functionLinenumberEnd: 2516
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          24
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - lre_realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:2514,16'
          Dst:             lre_realloc
    - functionName:    lre_compile
      functionSourceFile: '/src/quickjs/libregexp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2525
      functionLinenumberEnd: 2614
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          173
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - compute_register_count
        - dbuf_error
        - dbuf_free
        - dbuf_init2
        - dbuf_put
        - dbuf_put_u16
        - dbuf_put_u32
        - dbuf_putc
        - lre_bytecode_realloc
        - lre_get_flags
        - lre_realloc
        - pstrcpy
        - put_u16
        - put_u32
        - re_emit_op
        - re_emit_op_u32
        - re_emit_op_u8
        - re_parse_disjunction
        - re_parse_error
        - re_parse_out_of_memory
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libregexp.c:2546,5'
          Dst:             dbuf_init2
        - Src:             'libregexp.c:2546,5'
          Dst:             lre_bytecode_realloc
        - Src:             'libregexp.c:2547,5'
          Dst:             dbuf_init2
        - Src:             'libregexp.c:2547,5'
          Dst:             lre_realloc
        - Src:             'libregexp.c:2549,5'
          Dst:             dbuf_put_u16
        - Src:             'libregexp.c:2550,5'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:2551,5'
          Dst:             dbuf_putc
        - Src:             'libregexp.c:2552,5'
          Dst:             dbuf_put_u32
        - Src:             'libregexp.c:2559,9'
          Dst:             re_emit_op_u32
        - Src:             'libregexp.c:2560,9'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2561,9'
          Dst:             re_emit_op_u32
        - Src:             'libregexp.c:2563,5'
          Dst:             re_emit_op_u8
        - Src:             'libregexp.c:2565,9'
          Dst:             re_parse_disjunction
        - Src:             'libregexp.c:2567,9'
          Dst:             dbuf_free
        - Src:             'libregexp.c:2568,9'
          Dst:             dbuf_free
        - Src:             'libregexp.c:2569,9'
          Dst:             pstrcpy
        - Src:             'libregexp.c:2574,5'
          Dst:             re_emit_op_u8
        - Src:             'libregexp.c:2576,5'
          Dst:             re_emit_op
        - Src:             'libregexp.c:2579,9'
          Dst:             re_parse_error
        - Src:             'libregexp.c:2583,9'
          Dst:             dbuf_error
        - Src:             'libregexp.c:2584,9'
          Dst:             re_parse_out_of_memory
        - Src:             'libregexp.c:2588,22'
          Dst:             compute_register_count
        - Src:             'libregexp.c:2590,9'
          Dst:             re_parse_error
        - Src:             'libregexp.c:2596,5'
          Dst:             put_u32
        - Src:             'libregexp.c:2601,9'
          Dst:             dbuf_put
        - Src:             'libregexp.c:2603,17'
          Dst:             lre_get_flags
        - Src:             'libregexp.c:2602,9'
          Dst:             put_u16
        - Src:             'libregexp.c:2605,5'
          Dst:             dbuf_free
    - functionName:    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:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cutils.c:144,13'
          Dst:             dbuf_claim
    - functionName:    dbuf_init
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbuf_init2
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cutils.c:100,5'
          Dst:             dbuf_init2
    - functionName:    dbuf_init2
      functionSourceFile: '/src/quickjs/cutils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    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: 1923
      functionLinenumberEnd: 2112
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         147
      ICount:          778
      EdgeCount:       192
      CyclomaticComplexity: 47
      functionsReached:
        - __assert_fail
        - unicode_prop1
        - unicode_sequence_prop1
      functionUses:    7
      BranchProfiles:
        - Branch String:   'libunicode.c:1927,5'
          Branch Sides:    []
        - Branch String:   'libunicode.c:2042,25'
          Branch Sides:    []
      Callsites:
        - Src:             'libunicode.c:2102,19'
          Dst:             unicode_sequence_prop1
        - Src:             'libunicode.c:1929,13'
          Dst:             unicode_prop1
        - Src:             'libunicode.c:1940,13'
          Dst:             unicode_prop1
        - Src:             'libunicode.c:1952,13'
          Dst:             unicode_prop1
        - Src:             'libunicode.c:1965,13'
          Dst:             unicode_prop1
        - Src:             'libunicode.c:2005,25'
          Dst:             __assert_fail
        - Src:             'libunicode.c:2087,13'
          Dst:             unicode_prop1
        - Src:             'libunicode.c:2102,19'
          Dst:             unicode_sequence_prop1
        - Src:             'libunicode.c:2102,19'
          Dst:             unicode_sequence_prop1
        - Src:             'libunicode.c:2102,19'
          Dst:             unicode_sequence_prop1
        - Src:             'libunicode.c:2102,19'
          Dst:             unicode_sequence_prop1
        - Src:             'libunicode.c:2102,19'
          Dst:             unicode_sequence_prop1
    - functionName:    unicode_prop1
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1460
      functionLinenumberEnd: 1504
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          129
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - cr_add_interval
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:1482,21'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:1498,17'
          Dst:             cr_add_interval
    - functionName:    cr_add_interval
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - cr_realloc
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             './libunicode.h:74,13'
          Dst:             cr_realloc
    - functionName:    cr_realloc
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 407
      functionLinenumberEnd: 421
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - max_int
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:412,20'
          Dst:             max_int
    - functionName:    max_int
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          16
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unicode_sequence_prop
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2118
      functionLinenumberEnd: 2124
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          25
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - unicode_find_name
        - unicode_sequence_prop1
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:2120,20'
          Dst:             unicode_find_name
        - Src:             'libunicode.c:2123,12'
          Dst:             unicode_sequence_prop1
    - functionName:    unicode_find_name
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1248
      functionLinenumberEnd: 1272
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          80
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - memcmp
        - strchr
        - strlen
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:1255,16'
          Dst:             strlen
        - Src:             'libunicode.c:1258,17'
          Dst:             strchr
        - Src:             'libunicode.c:1260,23'
          Dst:             strlen
        - Src:             'libunicode.c:1263,37'
          Dst:             memcmp
    - functionName:    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: 1904
      functionLinenumberEnd: 1917
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         34
      ICount:          121
      EdgeCount:       49
      CyclomaticComplexity: 17
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unicode_prop_ops
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1520
      functionLinenumberEnd: 1593
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         60
      ICount:          327
      EdgeCount:       69
      CyclomaticComplexity: 11
      functionsReached:
        - __assert_fail
        - abort
        - cr_copy
        - cr_free
        - cr_init
        - cr_invert
        - cr_op
        - unicode_case1
        - unicode_general_category1
        - unicode_prop1
      functionUses:    14
      BranchProfiles:
        - Branch String:   'libunicode.c:1530,9'
          Branch Sides:    []
      Callsites:
        - Src:             'libunicode.c:1532,13'
          Dst:             __assert_fail
        - Src:             'libunicode.c:1534,13'
          Dst:             cr_init
        - Src:             'libunicode.c:1535,17'
          Dst:             unicode_general_category1
        - Src:             'libunicode.c:1539,13'
          Dst:             __assert_fail
        - Src:             'libunicode.c:1541,13'
          Dst:             cr_init
        - Src:             'libunicode.c:1542,17'
          Dst:             unicode_prop1
        - Src:             'libunicode.c:1546,13'
          Dst:             __assert_fail
        - Src:             'libunicode.c:1548,13'
          Dst:             cr_init
        - Src:             'libunicode.c:1549,17'
          Dst:             unicode_case1
        - Src:             'libunicode.c:1557,17'
          Dst:             __assert_fail
        - Src:             'libunicode.c:1558,17'
          Dst:             __assert_fail
        - Src:             'libunicode.c:1562,17'
          Dst:             cr_init
        - Src:             'libunicode.c:1564,21'
          Dst:             cr_op
        - Src:             'libunicode.c:1567,17'
          Dst:             cr_free
        - Src:             'libunicode.c:1568,17'
          Dst:             cr_free
        - Src:             'libunicode.c:1574,13'
          Dst:             __assert_fail
        - Src:             'libunicode.c:1575,17'
          Dst:             cr_invert
        - Src:             'libunicode.c:1581,13'
          Dst:             abort
        - Src:             'libunicode.c:1585,5'
          Dst:             __assert_fail
        - Src:             'libunicode.c:1586,11'
          Dst:             cr_copy
        - Src:             'libunicode.c:1587,5'
          Dst:             cr_free
        - Src:             'libunicode.c:1591,9'
          Dst:             cr_free
    - functionName:    cr_init
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 394
      functionLinenumberEnd: 399
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unicode_general_category1
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1399
      functionLinenumberEnd: 1457
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          158
      EdgeCount:       45
      CyclomaticComplexity: 14
      functionsReached:
        - cr_add_interval
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:1445,29'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:1452,17'
          Dst:             cr_add_interval
    - functionName:    unicode_case1
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 553
      functionLinenumberEnd: 613
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         51
      ICount:          208
      EdgeCount:       68
      CyclomaticComplexity: 19
      functionsReached:
        - cr_add_interval
      functionUses:    5
      BranchProfiles:
        - Branch String:   'libunicode.c:580,13'
          Branch Sides:    []
      Callsites:
        - Src:             'libunicode.c:586,25'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:594,25'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:597,21'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:597,21'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:600,25'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:606,21'
          Dst:             cr_add_interval
    - functionName:    cr_op
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 464
      functionLinenumberEnd: 515
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          134
      EdgeCount:       34
      CyclomaticComplexity: 7
      functionsReached:
        - abort
        - cr_add_point
        - cr_compress
      functionUses:    7
      BranchProfiles:
        - Branch String:   'libunicode.c:492,9'
          Branch Sides:    []
      Callsites:
        - Src:             'libunicode.c:506,13'
          Dst:             abort
        - Src:             'libunicode.c:509,17'
          Dst:             cr_add_point
        - Src:             'libunicode.c:513,5'
          Dst:             cr_compress
    - functionName:    cr_free
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 402
      functionLinenumberEnd: 404
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    17
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cr_invert
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 530
      functionLinenumberEnd: 541
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cr_compress
        - cr_realloc
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:533,9'
          Dst:             cr_realloc
        - Src:             'libunicode.c:539,5'
          Dst:             cr_compress
    - functionName:    cr_copy
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 424
      functionLinenumberEnd: 430
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cr_realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:425,9'
          Dst:             cr_realloc
    - functionName:    cr_compress
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 434
      functionLinenumberEnd: 459
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          97
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cr_add_point
      functionSourceFile: '/src/quickjs/./libunicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - cr_realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './libunicode.h:64,13'
          Dst:             cr_realloc
    - functionName:    cr_default_realloc
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 389
      functionLinenumberEnd: 390
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:390,12'
          Dst:             realloc
    - functionName:    unicode_prop
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1628
      functionLinenumberEnd: 1821
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          147
      EdgeCount:       36
      CyclomaticComplexity: 5
      functionsReached:
        - cr_add_interval
        - unicode_case1
        - unicode_find_name
        - unicode_prop1
        - unicode_prop_ops
      functionUses:    1
      BranchProfiles:
        - Branch String:   'libunicode.c:1637,5'
          Branch Sides:    []
      Callsites:
        - Src:             'libunicode.c:1631,16'
          Dst:             unicode_find_name
        - Src:             'libunicode.c:1639,13'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:1643,13'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:1647,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1653,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1660,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1667,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1674,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1683,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1694,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1702,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1709,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1723,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1740,15'
          Dst:             unicode_case1
        - Src:             'libunicode.c:1743,15'
          Dst:             unicode_case1
        - Src:             'libunicode.c:1746,15'
          Dst:             unicode_case1
        - Src:             'libunicode.c:1749,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1756,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1763,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1807,15'
          Dst:             unicode_prop_ops
        - Src:             'libunicode.c:1817,15'
          Dst:             unicode_prop1
    - functionName:    unicode_general_category
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1609
      functionLinenumberEnd: 1622
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          41
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - unicode_find_name
        - unicode_general_category1
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:1613,14'
          Dst:             unicode_find_name
        - Src:             'libunicode.c:1621,12'
          Dst:             unicode_general_category1
    - functionName:    unicode_script
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1278
      functionLinenumberEnd: 1394
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         82
      ICount:          383
      EdgeCount:       112
      CyclomaticComplexity: 32
      functionsReached:
        - cr_add_interval
        - cr_free
        - cr_init
        - cr_invert
        - cr_op
        - unicode_find_name
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:1286,18'
          Dst:             unicode_find_name
        - Src:             'libunicode.c:1294,9'
          Dst:             cr_init
        - Src:             'libunicode.c:1295,9'
          Dst:             cr_init
        - Src:             'libunicode.c:1322,21'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:1330,13'
          Dst:             cr_invert
        - Src:             'libunicode.c:1357,25'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:1363,29'
          Dst:             cr_add_interval
        - Src:             'libunicode.c:1374,17'
          Dst:             cr_invert
        - Src:             'libunicode.c:1376,17'
          Dst:             cr_op
        - Src:             'libunicode.c:1380,17'
          Dst:             cr_op
        - Src:             'libunicode.c:1384,9'
          Dst:             cr_free
        - Src:             'libunicode.c:1385,9'
          Dst:             cr_free
        - Src:             'libunicode.c:1390,9'
          Dst:             cr_free
        - Src:             'libunicode.c:1391,9'
          Dst:             cr_free
    - functionName:    compose_pair
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1157
      functionLinenumberEnd: 1169
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          90
      EdgeCount:       32
      CyclomaticComplexity: 11
      functionsReached:
        - unicode_compose_pair
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:1167,16'
          Dst:             unicode_compose_pair
    - functionName:    unicode_get_cc
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1034
      functionLinenumberEnd: 1089
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         22
      ICount:          120
      EdgeCount:       25
      CyclomaticComplexity: 5
      functionsReached:
        - get_index_pos
      functionUses:    6
      BranchProfiles:
        - Branch String:   'libunicode.c:1070,13'
          Branch Sides:    []
      Callsites:
        - Src:             'libunicode.c:1039,11'
          Dst:             get_index_pos
    - functionName:    sort_cc
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1092
      functionLinenumberEnd: 1125
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          118
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - unicode_get_cc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:1096,14'
          Dst:             unicode_get_cc
        - Src:             'libunicode.c:1102,23'
          Dst:             unicode_get_cc
        - Src:             'libunicode.c:1107,25'
          Dst:             unicode_get_cc
    - functionName:    dbuf_error
      functionSourceFile: '/src/quickjs/./cutils.h'
      linkageType:     InternalLinkage
      functionLinenumber: 322
      functionLinenumberEnd: 323
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    to_nfd_rec
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1129
      functionLinenumberEnd: 1153
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          91
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - dbuf_put_u32
        - to_nfd_rec
        - unicode_decomp_char
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:1139,13'
          Dst:             dbuf_put_u32
        - Src:             'libunicode.c:1140,13'
          Dst:             dbuf_put_u32
        - Src:             'libunicode.c:1143,17'
          Dst:             dbuf_put_u32
        - Src:             'libunicode.c:1145,17'
          Dst:             unicode_decomp_char
        - Src:             'libunicode.c:1147,17'
          Dst:             to_nfd_rec
        - Src:             'libunicode.c:1149,17'
          Dst:             dbuf_put_u32
    - functionName:    unicode_normalize
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1174
      functionLinenumberEnd: 1243
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         46
      ICount:          209
      EdgeCount:       63
      CyclomaticComplexity: 19
      functionsReached:
        - compose_pair
        - dbuf_claim
        - dbuf_error
        - dbuf_init2
        - sort_cc
        - to_nfd_rec
        - unicode_get_cc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:1181,5'
          Dst:             dbuf_init2
        - Src:             'libunicode.c:1182,9'
          Dst:             dbuf_claim
        - Src:             'libunicode.c:1199,5'
          Dst:             to_nfd_rec
        - Src:             'libunicode.c:1200,9'
          Dst:             dbuf_error
        - Src:             'libunicode.c:1208,5'
          Dst:             sort_cc
        - Src:             'libunicode.c:1221,19'
          Dst:             unicode_get_cc
        - Src:             'libunicode.c:1224,18'
          Dst:             unicode_get_cc
        - Src:             'libunicode.c:1224,18'
          Dst:             unicode_get_cc
        - Src:             'libunicode.c:1233,18'
          Dst:             compose_pair
    - functionName:    lre_is_id_continue
      functionSourceFile: '/src/quickjs/libunicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 754
      functionLinenumberEnd: 756
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          25
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - lre_is_id_start
        - lre_is_in_table
      functionUses:    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:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'libunicode.c:256,24'
          Dst:             lre_case_folding_entry
...
