/home/travis/build/MoarVM/MoarVM/src/strings/iter.h
Line | Count | Source (jump to first uncovered line) |
1 | | /* Grapheme iterator structure; iterates through graphemes in a string. */ |
2 | | struct MVMGraphemeIter { |
3 | | /* The blob we're currently iterating over. */ |
4 | | union { |
5 | | MVMGrapheme32 *blob_32; |
6 | | MVMGraphemeASCII *blob_ascii; |
7 | | MVMGrapheme8 *blob_8; |
8 | | void *any; |
9 | | } active_blob; |
10 | | |
11 | | /* The type of blob we have. */ |
12 | | MVMuint16 blob_type; |
13 | | |
14 | | /* The number of strands remaining, if any. */ |
15 | | MVMuint16 strands_remaining; |
16 | | |
17 | | /* The current position, and the end position. */ |
18 | | MVMStringIndex pos; |
19 | | MVMStringIndex end; |
20 | | |
21 | | /* Repetition count, and the start index in the blob (only needed if we're |
22 | | * doing an iteration over a repetition). */ |
23 | | MVMStringIndex start; |
24 | | MVMuint32 repetitions; |
25 | | |
26 | | /* The next strand, if we're doing a strand-based iteration. */ |
27 | | MVMStringStrand *next_strand; |
28 | | }; |
29 | | |
30 | | /* Initializes a grapheme iterator. */ |
31 | 7.56M | MVM_STATIC_INLINE void MVM_string_gi_init(MVMThreadContext *tc, MVMGraphemeIter *gi, MVMString *s) { |
32 | 7.56M | if (s->body.storage_type == MVM_STRING_STRAND) { |
33 | 4.53M | MVMStringStrand *strands = s->body.storage.strands; |
34 | 4.53M | MVMString *first = strands[0].blob_string; |
35 | 4.53M | gi->active_blob.any = first->body.storage.any; |
36 | 4.53M | gi->blob_type = first->body.storage_type; |
37 | 4.53M | gi->strands_remaining = s->body.num_strands - 1; |
38 | 4.53M | gi->pos = gi->start = strands[0].start; |
39 | 4.53M | gi->end = strands[0].end; |
40 | 4.53M | gi->repetitions = strands[0].repetitions; |
41 | 4.53M | gi->next_strand = strands + 1; |
42 | 4.53M | } |
43 | 3.02M | else { |
44 | 3.02M | gi->active_blob.any = s->body.storage.any; |
45 | 3.02M | gi->blob_type = s->body.storage_type; |
46 | 3.02M | gi->end = s->body.num_graphs; |
47 | 3.02M | gi->strands_remaining = gi->start = gi->pos = gi->repetitions = 0; |
48 | 3.02M | } |
49 | 7.56M | }; Unexecuted instantiation: manipulate.c:MVM_string_gi_init Unexecuted instantiation: bootstrap.c:MVM_string_gi_init Unexecuted instantiation: sc.c:MVM_string_gi_init Unexecuted instantiation: serialization.c:MVM_string_gi_init compiler.c:MVM_string_gi_init Line | Count | Source | 31 | 34.0k | MVM_STATIC_INLINE void MVM_string_gi_init(MVMThreadContext *tc, MVMGraphemeIter *gi, MVMString *s) { | 32 | 34.0k | if (s->body.storage_type == MVM_STRING_STRAND) { | 33 | 10.1k | MVMStringStrand *strands = s->body.storage.strands; | 34 | 10.1k | MVMString *first = strands[0].blob_string; | 35 | 10.1k | gi->active_blob.any = first->body.storage.any; | 36 | 10.1k | gi->blob_type = first->body.storage_type; | 37 | 10.1k | gi->strands_remaining = s->body.num_strands - 1; | 38 | 10.1k | gi->pos = gi->start = strands[0].start; | 39 | 10.1k | gi->end = strands[0].end; | 40 | 10.1k | gi->repetitions = strands[0].repetitions; | 41 | 10.1k | gi->next_strand = strands + 1; | 42 | 10.1k | } | 43 | 23.9k | else { | 44 | 23.9k | gi->active_blob.any = s->body.storage.any; | 45 | 23.9k | gi->blob_type = s->body.storage_type; | 46 | 23.9k | gi->end = s->body.num_graphs; | 47 | 23.9k | gi->strands_remaining = gi->start = gi->pos = gi->repetitions = 0; | 48 | 23.9k | } | 49 | 34.0k | }; |
Unexecuted instantiation: driver.c:MVM_string_gi_init Unexecuted instantiation: dump.c:MVM_string_gi_init Unexecuted instantiation: graph.c:MVM_string_gi_init Unexecuted instantiation: codegen.c:MVM_string_gi_init Unexecuted instantiation: candidate.c:MVM_string_gi_init Unexecuted instantiation: 6model.c:MVM_string_gi_init Unexecuted instantiation: facts.c:MVM_string_gi_init Unexecuted instantiation: optimize.c:MVM_string_gi_init Unexecuted instantiation: dead_bb_elimination.c:MVM_string_gi_init Unexecuted instantiation: deopt.c:MVM_string_gi_init Unexecuted instantiation: log.c:MVM_string_gi_init Unexecuted instantiation: threshold.c:MVM_string_gi_init Unexecuted instantiation: inline.c:MVM_string_gi_init Unexecuted instantiation: osr.c:MVM_string_gi_init Unexecuted instantiation: lookup.c:MVM_string_gi_init Unexecuted instantiation: Semaphore.c:MVM_string_gi_init Unexecuted instantiation: MVMContinuation.c:MVM_string_gi_init Unexecuted instantiation: NativeCall.c:MVM_string_gi_init Unexecuted instantiation: CPointer.c:MVM_string_gi_init Unexecuted instantiation: CStr.c:MVM_string_gi_init Unexecuted instantiation: CArray.c:MVM_string_gi_init Unexecuted instantiation: CStruct.c:MVM_string_gi_init Unexecuted instantiation: CUnion.c:MVM_string_gi_init Unexecuted instantiation: ReentrantMutex.c:MVM_string_gi_init Unexecuted instantiation: ConditionVariable.c:MVM_string_gi_init Unexecuted instantiation: iterator.c:MVM_string_gi_init Unexecuted instantiation: ConcBlockingQueue.c:MVM_string_gi_init Unexecuted instantiation: MVMAsyncTask.c:MVM_string_gi_init Unexecuted instantiation: MVMNull.c:MVM_string_gi_init Unexecuted instantiation: CPPStruct.c:MVM_string_gi_init Unexecuted instantiation: NativeRef.c:MVM_string_gi_init Unexecuted instantiation: MultiDimArray.c:MVM_string_gi_init Unexecuted instantiation: Decoder.c:MVM_string_gi_init Unexecuted instantiation: MVMSpeshLog.c:MVM_string_gi_init Unexecuted instantiation: MVMStaticFrameSpesh.c:MVM_string_gi_init Unexecuted instantiation: mmap.c:MVM_string_gi_init Unexecuted instantiation: profile.c:MVM_string_gi_init Unexecuted instantiation: heapsnapshot.c:MVM_string_gi_init Unexecuted instantiation: telemeh.c:MVM_string_gi_init Unexecuted instantiation: crossthreadwrite.c:MVM_string_gi_init Unexecuted instantiation: line_coverage.c:MVM_string_gi_init Unexecuted instantiation: sys.c:MVM_string_gi_init Unexecuted instantiation: random.c:MVM_string_gi_init Unexecuted instantiation: memmem32.c:MVM_string_gi_init Unexecuted instantiation: moar.c:MVM_string_gi_init Unexecuted instantiation: instrument.c:MVM_string_gi_init Unexecuted instantiation: time.c:MVM_string_gi_init Unexecuted instantiation: label.c:MVM_string_gi_init Unexecuted instantiation: compile.c:MVM_string_gi_init Unexecuted instantiation: expr.c:MVM_string_gi_init Unexecuted instantiation: tile.c:MVM_string_gi_init Unexecuted instantiation: linear_scan.c:MVM_string_gi_init Unexecuted instantiation: interface.c:MVM_string_gi_init Unexecuted instantiation: emit.c:MVM_string_gi_init Unexecuted instantiation: arch.c:MVM_string_gi_init utf8_c8.c:MVM_string_gi_init Line | Count | Source | 31 | 4.27k | MVM_STATIC_INLINE void MVM_string_gi_init(MVMThreadContext *tc, MVMGraphemeIter *gi, MVMString *s) { | 32 | 4.27k | if (s->body.storage_type == MVM_STRING_STRAND) { | 33 | 3.55k | MVMStringStrand *strands = s->body.storage.strands; | 34 | 3.55k | MVMString *first = strands[0].blob_string; | 35 | 3.55k | gi->active_blob.any = first->body.storage.any; | 36 | 3.55k | gi->blob_type = first->body.storage_type; | 37 | 3.55k | gi->strands_remaining = s->body.num_strands - 1; | 38 | 3.55k | gi->pos = gi->start = strands[0].start; | 39 | 3.55k | gi->end = strands[0].end; | 40 | 3.55k | gi->repetitions = strands[0].repetitions; | 41 | 3.55k | gi->next_strand = strands + 1; | 42 | 3.55k | } | 43 | 725 | else { | 44 | 725 | gi->active_blob.any = s->body.storage.any; | 45 | 725 | gi->blob_type = s->body.storage_type; | 46 | 725 | gi->end = s->body.num_graphs; | 47 | 725 | gi->strands_remaining = gi->start = gi->pos = gi->repetitions = 0; | 48 | 725 | } | 49 | 4.27k | }; |
Unexecuted instantiation: worker.c:MVM_string_gi_init Unexecuted instantiation: stats.c:MVM_string_gi_init Unexecuted instantiation: plan.c:MVM_string_gi_init Unexecuted instantiation: arg_guard.c:MVM_string_gi_init Unexecuted instantiation: plugin.c:MVM_string_gi_init decode_stream.c:MVM_string_gi_init Line | Count | Source | 31 | 1.30k | MVM_STATIC_INLINE void MVM_string_gi_init(MVMThreadContext *tc, MVMGraphemeIter *gi, MVMString *s) { | 32 | 1.30k | if (s->body.storage_type == MVM_STRING_STRAND) { | 33 | 0 | MVMStringStrand *strands = s->body.storage.strands; | 34 | 0 | MVMString *first = strands[0].blob_string; | 35 | 0 | gi->active_blob.any = first->body.storage.any; | 36 | 0 | gi->blob_type = first->body.storage_type; | 37 | 0 | gi->strands_remaining = s->body.num_strands - 1; | 38 | 0 | gi->pos = gi->start = strands[0].start; | 39 | 0 | gi->end = strands[0].end; | 40 | 0 | gi->repetitions = strands[0].repetitions; | 41 | 0 | gi->next_strand = strands + 1; | 42 | 0 | } | 43 | 1.30k | else { | 44 | 1.30k | gi->active_blob.any = s->body.storage.any; | 45 | 1.30k | gi->blob_type = s->body.storage_type; | 46 | 1.30k | gi->end = s->body.num_graphs; | 47 | 1.30k | gi->strands_remaining = gi->start = gi->pos = gi->repetitions = 0; | 48 | 1.30k | } | 49 | 1.30k | }; |
ascii.c:MVM_string_gi_init Line | Count | Source | 31 | 1.96k | MVM_STATIC_INLINE void MVM_string_gi_init(MVMThreadContext *tc, MVMGraphemeIter *gi, MVMString *s) { | 32 | 1.96k | if (s->body.storage_type == MVM_STRING_STRAND) { | 33 | 0 | MVMStringStrand *strands = s->body.storage.strands; | 34 | 0 | MVMString *first = strands[0].blob_string; | 35 | 0 | gi->active_blob.any = first->body.storage.any; | 36 | 0 | gi->blob_type = first->body.storage_type; | 37 | 0 | gi->strands_remaining = s->body.num_strands - 1; | 38 | 0 | gi->pos = gi->start = strands[0].start; | 39 | 0 | gi->end = strands[0].end; | 40 | 0 | gi->repetitions = strands[0].repetitions; | 41 | 0 | gi->next_strand = strands + 1; | 42 | 0 | } | 43 | 1.96k | else { | 44 | 1.96k | gi->active_blob.any = s->body.storage.any; | 45 | 1.96k | gi->blob_type = s->body.storage_type; | 46 | 1.96k | gi->end = s->body.num_graphs; | 47 | 1.96k | gi->strands_remaining = gi->start = gi->pos = gi->repetitions = 0; | 48 | 1.96k | } | 49 | 1.96k | }; |
parse_num.c:MVM_string_gi_init Line | Count | Source | 31 | 5.91k | MVM_STATIC_INLINE void MVM_string_gi_init(MVMThreadContext *tc, MVMGraphemeIter *gi, MVMString *s) { | 32 | 5.91k | if (s->body.storage_type == MVM_STRING_STRAND) { | 33 | 2.44k | MVMStringStrand *strands = s->body.storage.strands; | 34 | 2.44k | MVMString *first = strands[0].blob_string; | 35 | 2.44k | gi->active_blob.any = first->body.storage.any; | 36 | 2.44k | gi->blob_type = first->body.storage_type; | 37 | 2.44k | gi->strands_remaining = s->body.num_strands - 1; | 38 | 2.44k | gi->pos = gi->start = strands[0].start; | 39 | 2.44k | gi->end = strands[0].end; | 40 | 2.44k | gi->repetitions = strands[0].repetitions; | 41 | 2.44k | gi->next_strand = strands + 1; | 42 | 2.44k | } | 43 | 3.47k | else { | 44 | 3.47k | gi->active_blob.any = s->body.storage.any; | 45 | 3.47k | gi->blob_type = s->body.storage_type; | 46 | 3.47k | gi->end = s->body.num_graphs; | 47 | 3.47k | gi->strands_remaining = gi->start = gi->pos = gi->repetitions = 0; | 48 | 3.47k | } | 49 | 5.91k | }; |
utf8.c:MVM_string_gi_init Line | Count | Source | 31 | 16.0k | MVM_STATIC_INLINE void MVM_string_gi_init(MVMThreadContext *tc, MVMGraphemeIter *gi, MVMString *s) { | 32 | 16.0k | if (s->body.storage_type == MVM_STRING_STRAND) { | 33 | 13.8k | MVMStringStrand *strands = s->body.storage.strands; | 34 | 13.8k | MVMString *first = strands[0].blob_string; | 35 | 13.8k | gi->active_blob.any = first->body.storage.any; | 36 | 13.8k | gi->blob_type = first->body.storage_type; | 37 | 13.8k | gi->strands_remaining = s->body.num_strands - 1; | 38 | 13.8k | gi->pos = gi->start = strands[0].start; | 39 | 13.8k | gi->end = strands[0].end; | 40 | 13.8k | gi->repetitions = strands[0].repetitions; | 41 | 13.8k | gi->next_strand = strands + 1; | 42 | 13.8k | } | 43 | 2.19k | else { | 44 | 2.19k | gi->active_blob.any = s->body.storage.any; | 45 | 2.19k | gi->blob_type = s->body.storage_type; | 46 | 2.19k | gi->end = s->body.num_graphs; | 47 | 2.19k | gi->strands_remaining = gi->start = gi->pos = gi->repetitions = 0; | 48 | 2.19k | } | 49 | 16.0k | }; |
Unexecuted instantiation: callsite.c:MVM_string_gi_init Line | Count | Source | 31 | 2.38M | MVM_STATIC_INLINE void MVM_string_gi_init(MVMThreadContext *tc, MVMGraphemeIter *gi, MVMString *s) { | 32 | 2.38M | if (s->body.storage_type == MVM_STRING_STRAND) { | 33 | 2.38M | MVMStringStrand *strands = s->body.storage.strands; | 34 | 2.38M | MVMString *first = strands[0].blob_string; | 35 | 2.38M | gi->active_blob.any = first->body.storage.any; | 36 | 2.38M | gi->blob_type = first->body.storage_type; | 37 | 2.38M | gi->strands_remaining = s->body.num_strands - 1; | 38 | 2.38M | gi->pos = gi->start = strands[0].start; | 39 | 2.38M | gi->end = strands[0].end; | 40 | 2.38M | gi->repetitions = strands[0].repetitions; | 41 | 2.38M | gi->next_strand = strands + 1; | 42 | 2.38M | } | 43 | 0 | else { | 44 | 0 | gi->active_blob.any = s->body.storage.any; | 45 | 0 | gi->blob_type = s->body.storage_type; | 46 | 0 | gi->end = s->body.num_graphs; | 47 | 0 | gi->strands_remaining = gi->start = gi->pos = gi->repetitions = 0; | 48 | 0 | } | 49 | 2.38M | }; |
Unexecuted instantiation: unicode.c:MVM_string_gi_init normalize.c:MVM_string_gi_init Line | Count | Source | 31 | 2 | MVM_STATIC_INLINE void MVM_string_gi_init(MVMThreadContext *tc, MVMGraphemeIter *gi, MVMString *s) { | 32 | 2 | if (s->body.storage_type == MVM_STRING_STRAND) { | 33 | 0 | MVMStringStrand *strands = s->body.storage.strands; | 34 | 0 | MVMString *first = strands[0].blob_string; | 35 | 0 | gi->active_blob.any = first->body.storage.any; | 36 | 0 | gi->blob_type = first->body.storage_type; | 37 | 0 | gi->strands_remaining = s->body.num_strands - 1; | 38 | 0 | gi->pos = gi->start = strands[0].start; | 39 | 0 | gi->end = strands[0].end; | 40 | 0 | gi->repetitions = strands[0].repetitions; | 41 | 0 | gi->next_strand = strands + 1; | 42 | 0 | } | 43 | 2 | else { | 44 | 2 | gi->active_blob.any = s->body.storage.any; | 45 | 2 | gi->blob_type = s->body.storage_type; | 46 | 2 | gi->end = s->body.num_graphs; | 47 | 2 | gi->strands_remaining = gi->start = gi->pos = gi->repetitions = 0; | 48 | 2 | } | 49 | 2 | }; |
latin1.c:MVM_string_gi_init Line | Count | Source | 31 | 33.9k | MVM_STATIC_INLINE void MVM_string_gi_init(MVMThreadContext *tc, MVMGraphemeIter *gi, MVMString *s) { | 32 | 33.9k | if (s->body.storage_type == MVM_STRING_STRAND) { | 33 | 10.0k | MVMStringStrand *strands = s->body.storage.strands; | 34 | 10.0k | MVMString *first = strands[0].blob_string; | 35 | 10.0k | gi->active_blob.any = first->body.storage.any; | 36 | 10.0k | gi->blob_type = first->body.storage_type; | 37 | 10.0k | gi->strands_remaining = s->body.num_strands - 1; | 38 | 10.0k | gi->pos = gi->start = strands[0].start; | 39 | 10.0k | gi->end = strands[0].end; | 40 | 10.0k | gi->repetitions = strands[0].repetitions; | 41 | 10.0k | gi->next_strand = strands + 1; | 42 | 10.0k | } | 43 | 23.9k | else { | 44 | 23.9k | gi->active_blob.any = s->body.storage.any; | 45 | 23.9k | gi->blob_type = s->body.storage_type; | 46 | 23.9k | gi->end = s->body.num_graphs; | 47 | 23.9k | gi->strands_remaining = gi->start = gi->pos = gi->repetitions = 0; | 48 | 23.9k | } | 49 | 33.9k | }; |
utf16.c:MVM_string_gi_init Line | Count | Source | 31 | 1 | MVM_STATIC_INLINE void MVM_string_gi_init(MVMThreadContext *tc, MVMGraphemeIter *gi, MVMString *s) { | 32 | 1 | if (s->body.storage_type == MVM_STRING_STRAND) { | 33 | 0 | MVMStringStrand *strands = s->body.storage.strands; | 34 | 0 | MVMString *first = strands[0].blob_string; | 35 | 0 | gi->active_blob.any = first->body.storage.any; | 36 | 0 | gi->blob_type = first->body.storage_type; | 37 | 0 | gi->strands_remaining = s->body.num_strands - 1; | 38 | 0 | gi->pos = gi->start = strands[0].start; | 39 | 0 | gi->end = strands[0].end; | 40 | 0 | gi->repetitions = strands[0].repetitions; | 41 | 0 | gi->next_strand = strands + 1; | 42 | 0 | } | 43 | 1 | else { | 44 | 1 | gi->active_blob.any = s->body.storage.any; | 45 | 1 | gi->blob_type = s->body.storage_type; | 46 | 1 | gi->end = s->body.num_graphs; | 47 | 1 | gi->strands_remaining = gi->start = gi->pos = gi->repetitions = 0; | 48 | 1 | } | 49 | 1 | }; |
windows1252.c:MVM_string_gi_init Line | Count | Source | 31 | 13 | MVM_STATIC_INLINE void MVM_string_gi_init(MVMThreadContext *tc, MVMGraphemeIter *gi, MVMString *s) { | 32 | 13 | if (s->body.storage_type == MVM_STRING_STRAND) { | 33 | 1 | MVMStringStrand *strands = s->body.storage.strands; | 34 | 1 | MVMString *first = strands[0].blob_string; | 35 | 1 | gi->active_blob.any = first->body.storage.any; | 36 | 1 | gi->blob_type = first->body.storage_type; | 37 | 1 | gi->strands_remaining = s->body.num_strands - 1; | 38 | 1 | gi->pos = gi->start = strands[0].start; | 39 | 1 | gi->end = strands[0].end; | 40 | 1 | gi->repetitions = strands[0].repetitions; | 41 | 1 | gi->next_strand = strands + 1; | 42 | 1 | } | 43 | 12 | else { | 44 | 12 | gi->active_blob.any = s->body.storage.any; | 45 | 12 | gi->blob_type = s->body.storage_type; | 46 | 12 | gi->end = s->body.num_graphs; | 47 | 12 | gi->strands_remaining = gi->start = gi->pos = gi->repetitions = 0; | 48 | 12 | } | 49 | 13 | }; |
Unexecuted instantiation: shiftjis.c:MVM_string_gi_init Unexecuted instantiation: shiftjis_codeindex.c:MVM_string_gi_init bigintops.c:MVM_string_gi_init Line | Count | Source | 31 | 101 | MVM_STATIC_INLINE void MVM_string_gi_init(MVMThreadContext *tc, MVMGraphemeIter *gi, MVMString *s) { | 32 | 101 | if (s->body.storage_type == MVM_STRING_STRAND) { | 33 | 101 | MVMStringStrand *strands = s->body.storage.strands; | 34 | 101 | MVMString *first = strands[0].blob_string; | 35 | 101 | gi->active_blob.any = first->body.storage.any; | 36 | 101 | gi->blob_type = first->body.storage_type; | 37 | 101 | gi->strands_remaining = s->body.num_strands - 1; | 38 | 101 | gi->pos = gi->start = strands[0].start; | 39 | 101 | gi->end = strands[0].end; | 40 | 101 | gi->repetitions = strands[0].repetitions; | 41 | 101 | gi->next_strand = strands + 1; | 42 | 101 | } | 43 | 0 | else { | 44 | 0 | gi->active_blob.any = s->body.storage.any; | 45 | 0 | gi->blob_type = s->body.storage_type; | 46 | 0 | gi->end = s->body.num_graphs; | 47 | 0 | gi->strands_remaining = gi->start = gi->pos = gi->repetitions = 0; | 48 | 0 | } | 49 | 101 | }; |
Unexecuted instantiation: worklist.c:MVM_string_gi_init Unexecuted instantiation: nativecall_dyncall.c:MVM_string_gi_init Unexecuted instantiation: continuation.c:MVM_string_gi_init Unexecuted instantiation: intcache.c:MVM_string_gi_init Unexecuted instantiation: fixedsizealloc.c:MVM_string_gi_init Unexecuted instantiation: regionalloc.c:MVM_string_gi_init Unexecuted instantiation: debugserver.c:MVM_string_gi_init Unexecuted instantiation: config.c:MVM_string_gi_init Unexecuted instantiation: orchestrate.c:MVM_string_gi_init Unexecuted instantiation: allocation.c:MVM_string_gi_init Unexecuted instantiation: nativecall.c:MVM_string_gi_init Unexecuted instantiation: roots.c:MVM_string_gi_init Unexecuted instantiation: collect.c:MVM_string_gi_init Unexecuted instantiation: gen2.c:MVM_string_gi_init Unexecuted instantiation: wb.c:MVM_string_gi_init Unexecuted instantiation: objectid.c:MVM_string_gi_init Unexecuted instantiation: finalize.c:MVM_string_gi_init Unexecuted instantiation: debug.c:MVM_string_gi_init Unexecuted instantiation: io.c:MVM_string_gi_init Unexecuted instantiation: eventloop.c:MVM_string_gi_init Unexecuted instantiation: validation.c:MVM_string_gi_init Unexecuted instantiation: MVMMultiCache.c:MVM_string_gi_init Unexecuted instantiation: args.c:MVM_string_gi_init Unexecuted instantiation: exceptions.c:MVM_string_gi_init interp.c:MVM_string_gi_init Line | Count | Source | 31 | 4 | MVM_STATIC_INLINE void MVM_string_gi_init(MVMThreadContext *tc, MVMGraphemeIter *gi, MVMString *s) { | 32 | 4 | if (s->body.storage_type == MVM_STRING_STRAND) { | 33 | 1 | MVMStringStrand *strands = s->body.storage.strands; | 34 | 1 | MVMString *first = strands[0].blob_string; | 35 | 1 | gi->active_blob.any = first->body.storage.any; | 36 | 1 | gi->blob_type = first->body.storage_type; | 37 | 1 | gi->strands_remaining = s->body.num_strands - 1; | 38 | 1 | gi->pos = gi->start = strands[0].start; | 39 | 1 | gi->end = strands[0].end; | 40 | 1 | gi->repetitions = strands[0].repetitions; | 41 | 1 | gi->next_strand = strands + 1; | 42 | 1 | } | 43 | 3 | else { | 44 | 3 | gi->active_blob.any = s->body.storage.any; | 45 | 3 | gi->blob_type = s->body.storage_type; | 46 | 3 | gi->end = s->body.num_graphs; | 47 | 3 | gi->strands_remaining = gi->start = gi->pos = gi->repetitions = 0; | 48 | 3 | } | 49 | 4 | }; |
Unexecuted instantiation: threadcontext.c:MVM_string_gi_init Unexecuted instantiation: compunit.c:MVM_string_gi_init Unexecuted instantiation: bytecode.c:MVM_string_gi_init Unexecuted instantiation: frame.c:MVM_string_gi_init Unexecuted instantiation: callstack.c:MVM_string_gi_init Unexecuted instantiation: MVMDLLSym.c:MVM_string_gi_init Unexecuted instantiation: bytecodedump.c:MVM_string_gi_init Unexecuted instantiation: threads.c:MVM_string_gi_init Line | Count | Source | 31 | 4.35M | MVM_STATIC_INLINE void MVM_string_gi_init(MVMThreadContext *tc, MVMGraphemeIter *gi, MVMString *s) { | 32 | 4.35M | if (s->body.storage_type == MVM_STRING_STRAND) { | 33 | 2.09M | MVMStringStrand *strands = s->body.storage.strands; | 34 | 2.09M | MVMString *first = strands[0].blob_string; | 35 | 2.09M | gi->active_blob.any = first->body.storage.any; | 36 | 2.09M | gi->blob_type = first->body.storage_type; | 37 | 2.09M | gi->strands_remaining = s->body.num_strands - 1; | 38 | 2.09M | gi->pos = gi->start = strands[0].start; | 39 | 2.09M | gi->end = strands[0].end; | 40 | 2.09M | gi->repetitions = strands[0].repetitions; | 41 | 2.09M | gi->next_strand = strands + 1; | 42 | 2.09M | } | 43 | 2.25M | else { | 44 | 2.25M | gi->active_blob.any = s->body.storage.any; | 45 | 2.25M | gi->blob_type = s->body.storage_type; | 46 | 2.25M | gi->end = s->body.num_graphs; | 47 | 2.25M | gi->strands_remaining = gi->start = gi->pos = gi->repetitions = 0; | 48 | 2.25M | } | 49 | 4.35M | }; |
Unexecuted instantiation: hll.c:MVM_string_gi_init Unexecuted instantiation: loadbytecode.c:MVM_string_gi_init Unexecuted instantiation: num.c:MVM_string_gi_init coerce.c:MVM_string_gi_init Line | Count | Source | 31 | 9.48k | MVM_STATIC_INLINE void MVM_string_gi_init(MVMThreadContext *tc, MVMGraphemeIter *gi, MVMString *s) { | 32 | 9.48k | if (s->body.storage_type == MVM_STRING_STRAND) { | 33 | 9.48k | MVMStringStrand *strands = s->body.storage.strands; | 34 | 9.48k | MVMString *first = strands[0].blob_string; | 35 | 9.48k | gi->active_blob.any = first->body.storage.any; | 36 | 9.48k | gi->blob_type = first->body.storage_type; | 37 | 9.48k | gi->strands_remaining = s->body.num_strands - 1; | 38 | 9.48k | gi->pos = gi->start = strands[0].start; | 39 | 9.48k | gi->end = strands[0].end; | 40 | 9.48k | gi->repetitions = strands[0].repetitions; | 41 | 9.48k | gi->next_strand = strands + 1; | 42 | 9.48k | } | 43 | 0 | else { | 44 | 0 | gi->active_blob.any = s->body.storage.any; | 45 | 0 | gi->blob_type = s->body.storage_type; | 46 | 0 | gi->end = s->body.num_graphs; | 47 | 0 | gi->strands_remaining = gi->start = gi->pos = gi->repetitions = 0; | 48 | 0 | } | 49 | 9.48k | }; |
Unexecuted instantiation: dll.c:MVM_string_gi_init Unexecuted instantiation: ext.c:MVM_string_gi_init Unexecuted instantiation: HashAttrStore.c:MVM_string_gi_init Unexecuted instantiation: P6str.c:MVM_string_gi_init Unexecuted instantiation: P6opaque.c:MVM_string_gi_init Unexecuted instantiation: MVMCode.c:MVM_string_gi_init Unexecuted instantiation: MVMOSHandle.c:MVM_string_gi_init Unexecuted instantiation: MVMCompUnit.c:MVM_string_gi_init Unexecuted instantiation: MVMStaticFrame.c:MVM_string_gi_init Unexecuted instantiation: P6int.c:MVM_string_gi_init Unexecuted instantiation: P6num.c:MVM_string_gi_init Unexecuted instantiation: Uninstantiable.c:MVM_string_gi_init Unexecuted instantiation: syncsocket.c:MVM_string_gi_init Unexecuted instantiation: MVMThread.c:MVM_string_gi_init Unexecuted instantiation: MVMIter.c:MVM_string_gi_init Unexecuted instantiation: MVMContext.c:MVM_string_gi_init Unexecuted instantiation: SCRef.c:MVM_string_gi_init Unexecuted instantiation: MVMCallCapture.c:MVM_string_gi_init Unexecuted instantiation: P6bigint.c:MVM_string_gi_init Line | Count | Source | 31 | 713k | MVM_STATIC_INLINE void MVM_string_gi_init(MVMThreadContext *tc, MVMGraphemeIter *gi, MVMString *s) { | 32 | 713k | if (s->body.storage_type == MVM_STRING_STRAND) { | 33 | 0 | MVMStringStrand *strands = s->body.storage.strands; | 34 | 0 | MVMString *first = strands[0].blob_string; | 35 | 0 | gi->active_blob.any = first->body.storage.any; | 36 | 0 | gi->blob_type = first->body.storage_type; | 37 | 0 | gi->strands_remaining = s->body.num_strands - 1; | 38 | 0 | gi->pos = gi->start = strands[0].start; | 39 | 0 | gi->end = strands[0].end; | 40 | 0 | gi->repetitions = strands[0].repetitions; | 41 | 0 | gi->next_strand = strands + 1; | 42 | 0 | } | 43 | 713k | else { | 44 | 713k | gi->active_blob.any = s->body.storage.any; | 45 | 713k | gi->blob_type = s->body.storage_type; | 46 | 713k | gi->end = s->body.num_graphs; | 47 | 713k | gi->strands_remaining = gi->start = gi->pos = gi->repetitions = 0; | 48 | 713k | } | 49 | 713k | }; |
Unexecuted instantiation: MVMException.c:MVM_string_gi_init Unexecuted instantiation: syncfile.c:MVM_string_gi_init Unexecuted instantiation: KnowHOWREPR.c:MVM_string_gi_init Unexecuted instantiation: KnowHOWAttributeREPR.c:MVM_string_gi_init Unexecuted instantiation: fileops.c:MVM_string_gi_init Unexecuted instantiation: dirops.c:MVM_string_gi_init Unexecuted instantiation: procops.c:MVM_string_gi_init Unexecuted instantiation: timers.c:MVM_string_gi_init Unexecuted instantiation: filewatchers.c:MVM_string_gi_init Unexecuted instantiation: signals.c:MVM_string_gi_init Unexecuted instantiation: asyncsocket.c:MVM_string_gi_init Unexecuted instantiation: asyncsocketudp.c:MVM_string_gi_init Unexecuted instantiation: reprconv.c:MVM_string_gi_init Unexecuted instantiation: containers.c:MVM_string_gi_init Unexecuted instantiation: parametric.c:MVM_string_gi_init Unexecuted instantiation: MVMString.c:MVM_string_gi_init Unexecuted instantiation: VMArray.c:MVM_string_gi_init Unexecuted instantiation: MVMHash.c:MVM_string_gi_init Unexecuted instantiation: MVMCFunction.c:MVM_string_gi_init Unexecuted instantiation: reprs.c:MVM_string_gi_init |
50 | | /* Gets the number of graphemes remaining in the current strand of the grapheme |
51 | | * iterator, including repetitions */ |
52 | | #define MVM_string_gi_graphs_left_in_strand_rep(gi) \ |
53 | 3.94M | (gi->end - gi->pos + gi->repetitions * (gi->end - gi->start)) |
54 | | /* graphs left in strand + graphs left in repetitions of current strand */ |
55 | | |
56 | | /* Moves to the next strand, or repetition if there is one. */ |
57 | 43.1k | static void MVM_string_gi_next_strand_rep(MVMThreadContext *tc, MVMGraphemeIter *gi) { |
58 | 43.1k | MVMStringStrand *next = NULL; |
59 | 43.1k | if (gi->repetitions) { |
60 | 40.0k | gi->pos = gi->start; |
61 | 40.0k | gi->repetitions--; |
62 | 40.0k | return; |
63 | 40.0k | } |
64 | 3.11k | if (gi->strands_remaining <= 0) |
65 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator\n"); |
66 | 3.11k | |
67 | 3.11k | next = (gi->next_strand)++; |
68 | 3.11k | gi->pos = gi->start = next->start; |
69 | 3.11k | gi->end = next->end; |
70 | 3.11k | gi->repetitions = next->repetitions; |
71 | 3.11k | gi->blob_type = next->blob_string->body.storage_type; |
72 | 3.11k | gi->active_blob.any = next->blob_string->body.storage.any; |
73 | 3.11k | gi->strands_remaining--; |
74 | 3.11k | } Unexecuted instantiation: reprs.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: reprconv.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: containers.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: parametric.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: MVMString.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: VMArray.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: MVMHash.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: MVMCFunction.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: KnowHOWREPR.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: KnowHOWAttributeREPR.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: asyncsocketudp.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: asyncsocket.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: signals.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: filewatchers.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: timers.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: procops.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: dirops.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: fileops.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: syncsocket.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: syncfile.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: MVMThread.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: MVMMultiCache.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: MVMDLLSym.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: MVMException.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: NFA.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: P6bigint.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: MVMCallCapture.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: SCRef.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: MVMContext.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: MVMIter.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: P6str.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: HashAttrStore.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: Uninstantiable.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: P6num.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: P6int.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: MVMStaticFrame.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: MVMCompUnit.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: MVMOSHandle.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: MVMCode.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: P6opaque.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: callstack.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: dll.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: coerce.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: num.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: loadbytecode.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: hll.c:MVM_string_gi_next_strand_rep ops.c:MVM_string_gi_next_strand_rep Line | Count | Source | 57 | 43.1k | static void MVM_string_gi_next_strand_rep(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 58 | 43.1k | MVMStringStrand *next = NULL; | 59 | 43.1k | if (gi->repetitions) { | 60 | 40.0k | gi->pos = gi->start; | 61 | 40.0k | gi->repetitions--; | 62 | 40.0k | return; | 63 | 40.0k | } | 64 | 3.11k | if (gi->strands_remaining <= 0) | 65 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator\n"); | 66 | 3.11k | | 67 | 3.11k | next = (gi->next_strand)++; | 68 | 3.11k | gi->pos = gi->start = next->start; | 69 | 3.11k | gi->end = next->end; | 70 | 3.11k | gi->repetitions = next->repetitions; | 71 | 3.11k | gi->blob_type = next->blob_string->body.storage_type; | 72 | 3.11k | gi->active_blob.any = next->blob_string->body.storage.any; | 73 | 3.11k | gi->strands_remaining--; | 74 | 3.11k | } |
Unexecuted instantiation: threads.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: bytecodedump.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: validation.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: ext.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: frame.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: bytecode.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: compunit.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: threadcontext.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: interp.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: exceptions.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: args.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: callsite.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: worker.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: allocation.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: io.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: debug.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: finalize.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: objectid.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: wb.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: gen2.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: collect.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: roots.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: worklist.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: eventloop.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: orchestrate.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: config.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: debugserver.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: regionalloc.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: fixedsizealloc.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: intcache.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: continuation.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: nativecall_dyncall.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: nativecall.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: nfg.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: instrument.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: bigintops.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: shiftjis_codeindex.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: shiftjis.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: windows1252.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: utf16.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: latin1.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: normalize.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: unicode.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: profile.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: utf8_c8.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: utf8.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: parse_num.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: ascii.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: decode_stream.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: plugin.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: arg_guard.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: plan.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: stats.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: mmap.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: arch.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: emit.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: interface.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: linear_scan.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: tile.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: expr.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: compile.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: label.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: time.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: NativeCall.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: moar.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: memmem32.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: random.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: sys.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: line_coverage.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: crossthreadwrite.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: telemeh.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: heapsnapshot.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: Semaphore.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: 6model.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: MVMStaticFrameSpesh.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: MVMSpeshLog.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: Decoder.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: MultiDimArray.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: NativeRef.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: CPPStruct.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: MVMNull.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: ConcBlockingQueue.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: MVMAsyncTask.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: ConditionVariable.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: ReentrantMutex.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: CUnion.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: CStruct.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: CArray.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: CStr.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: CPointer.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: MVMContinuation.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: iterator.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: sc.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: lookup.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: osr.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: inline.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: threshold.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: log.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: deopt.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: dead_bb_elimination.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: optimize.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: facts.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: candidate.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: codegen.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: graph.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: dump.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: driver.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: compiler.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: serialization.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: bootstrap.c:MVM_string_gi_next_strand_rep Unexecuted instantiation: manipulate.c:MVM_string_gi_next_strand_rep |
75 | | /* Sets the position of the iterator. (Can be optimized in many ways in the |
76 | | * repetitions and strands branches.) */ |
77 | 3.21M | MVM_STATIC_INLINE void MVM_string_gi_move_to(MVMThreadContext *tc, MVMGraphemeIter *gi, MVMuint32 pos) { |
78 | 3.21M | MVMuint32 remaining = pos; |
79 | 3.21M | MVMuint32 strand_graphs; |
80 | 3.21M | MVMStringStrand *next = NULL; |
81 | 3.21M | |
82 | 3.21M | /* Find the appropriate strand. */ |
83 | 3.21M | /* Set strand_graphs to the number of graphemes */ |
84 | 3.94M | while (remaining > (strand_graphs = MVM_string_gi_graphs_left_in_strand_rep(gi))) { |
85 | 727k | remaining -= strand_graphs; |
86 | 727k | if (!(gi->strands_remaining--)) |
87 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator"); |
88 | 727k | next = (gi->next_strand)++; |
89 | 727k | gi->pos = gi->start = next->start; |
90 | 727k | gi->end = next->end; |
91 | 727k | gi->repetitions = next->repetitions; |
92 | 727k | } |
93 | 3.21M | if (next) { |
94 | 273k | gi->blob_type = next->blob_string->body.storage_type; |
95 | 273k | gi->active_blob.any = next->blob_string->body.storage.any; |
96 | 273k | } |
97 | 3.21M | |
98 | 3.21M | /* Now look within the strand. */ |
99 | 3.21M | if (!remaining) |
100 | 1.17M | return; |
101 | 3.21M | /* Most common case where we move within the strand */ |
102 | 2.04M | if (gi->pos + remaining <= gi->end) { |
103 | 838k | gi->pos += remaining; |
104 | 838k | return; |
105 | 838k | } |
106 | 2.04M | /* If we are here we are encountering a repetition */ |
107 | 1.20M | if (gi->repetitions) { |
108 | 1.20M | MVMuint32 rep_graphs = gi->end - gi->start; |
109 | 1.20M | MVMuint32 remaining_reps; |
110 | 1.20M | /* If we aren't at the end of the repetition, move to the end */ |
111 | 1.20M | if (gi->pos < gi->end) { |
112 | 1.20M | remaining -= gi->end - gi->pos; |
113 | 1.20M | gi->pos = gi->end; |
114 | 1.20M | } |
115 | 1.20M | remaining_reps = remaining / rep_graphs; |
116 | 1.20M | if (gi->repetitions < remaining_reps) |
117 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator:" |
118 | 0 | " no more repetitions remaining\n"); |
119 | 1.20M | gi->repetitions -= remaining_reps; |
120 | 1.20M | /* Since we're still at the end, if there's repetitions left over |
121 | 1.20M | * we are going to have to seek forward */ |
122 | 1.20M | if (remaining -= remaining_reps * rep_graphs) { |
123 | 1.00M | gi->repetitions--; /* Move to the next repetition. */ |
124 | 1.00M | gi->pos = gi->start + remaining; |
125 | 1.00M | /* remaining = 0 now for all purposes now, but since we return, no |
126 | 1.00M | * need to set it */ |
127 | 1.00M | } |
128 | 1.20M | return; |
129 | 1.20M | } |
130 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator"); |
131 | 0 | } Unexecuted instantiation: containers.c:MVM_string_gi_move_to Unexecuted instantiation: filewatchers.c:MVM_string_gi_move_to Unexecuted instantiation: parametric.c:MVM_string_gi_move_to Unexecuted instantiation: MVMString.c:MVM_string_gi_move_to Unexecuted instantiation: VMArray.c:MVM_string_gi_move_to Unexecuted instantiation: MVMHash.c:MVM_string_gi_move_to Unexecuted instantiation: MVMCFunction.c:MVM_string_gi_move_to Unexecuted instantiation: KnowHOWREPR.c:MVM_string_gi_move_to Unexecuted instantiation: KnowHOWAttributeREPR.c:MVM_string_gi_move_to Unexecuted instantiation: nativecall_dyncall.c:MVM_string_gi_move_to Unexecuted instantiation: reprconv.c:MVM_string_gi_move_to Unexecuted instantiation: reprs.c:MVM_string_gi_move_to Unexecuted instantiation: asyncsocketudp.c:MVM_string_gi_move_to Unexecuted instantiation: asyncsocket.c:MVM_string_gi_move_to Unexecuted instantiation: signals.c:MVM_string_gi_move_to Unexecuted instantiation: timers.c:MVM_string_gi_move_to Unexecuted instantiation: procops.c:MVM_string_gi_move_to Unexecuted instantiation: dirops.c:MVM_string_gi_move_to Unexecuted instantiation: fileops.c:MVM_string_gi_move_to Unexecuted instantiation: syncsocket.c:MVM_string_gi_move_to Unexecuted instantiation: MVMThread.c:MVM_string_gi_move_to Unexecuted instantiation: MVMMultiCache.c:MVM_string_gi_move_to Unexecuted instantiation: MVMDLLSym.c:MVM_string_gi_move_to Unexecuted instantiation: MVMException.c:MVM_string_gi_move_to NFA.c:MVM_string_gi_move_to Line | Count | Source | 77 | 683k | MVM_STATIC_INLINE void MVM_string_gi_move_to(MVMThreadContext *tc, MVMGraphemeIter *gi, MVMuint32 pos) { | 78 | 683k | MVMuint32 remaining = pos; | 79 | 683k | MVMuint32 strand_graphs; | 80 | 683k | MVMStringStrand *next = NULL; | 81 | 683k | | 82 | 683k | /* Find the appropriate strand. */ | 83 | 683k | /* Set strand_graphs to the number of graphemes */ | 84 | 683k | while (remaining > (strand_graphs = MVM_string_gi_graphs_left_in_strand_rep(gi))) { | 85 | 0 | remaining -= strand_graphs; | 86 | 0 | if (!(gi->strands_remaining--)) | 87 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator"); | 88 | 0 | next = (gi->next_strand)++; | 89 | 0 | gi->pos = gi->start = next->start; | 90 | 0 | gi->end = next->end; | 91 | 0 | gi->repetitions = next->repetitions; | 92 | 0 | } | 93 | 683k | if (next) { | 94 | 0 | gi->blob_type = next->blob_string->body.storage_type; | 95 | 0 | gi->active_blob.any = next->blob_string->body.storage.any; | 96 | 0 | } | 97 | 683k | | 98 | 683k | /* Now look within the strand. */ | 99 | 683k | if (!remaining) | 100 | 0 | return; | 101 | 683k | /* Most common case where we move within the strand */ | 102 | 683k | if (gi->pos + remaining <= gi->end) { | 103 | 683k | gi->pos += remaining; | 104 | 683k | return; | 105 | 683k | } | 106 | 683k | /* If we are here we are encountering a repetition */ | 107 | 0 | if (gi->repetitions) { | 108 | 0 | MVMuint32 rep_graphs = gi->end - gi->start; | 109 | 0 | MVMuint32 remaining_reps; | 110 | 0 | /* If we aren't at the end of the repetition, move to the end */ | 111 | 0 | if (gi->pos < gi->end) { | 112 | 0 | remaining -= gi->end - gi->pos; | 113 | 0 | gi->pos = gi->end; | 114 | 0 | } | 115 | 0 | remaining_reps = remaining / rep_graphs; | 116 | 0 | if (gi->repetitions < remaining_reps) | 117 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator:" | 118 | 0 | " no more repetitions remaining\n"); | 119 | 0 | gi->repetitions -= remaining_reps; | 120 | 0 | /* Since we're still at the end, if there's repetitions left over | 121 | 0 | * we are going to have to seek forward */ | 122 | 0 | if (remaining -= remaining_reps * rep_graphs) { | 123 | 0 | gi->repetitions--; /* Move to the next repetition. */ | 124 | 0 | gi->pos = gi->start + remaining; | 125 | 0 | /* remaining = 0 now for all purposes now, but since we return, no | 126 | 0 | * need to set it */ | 127 | 0 | } | 128 | 0 | return; | 129 | 0 | } | 130 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator"); | 131 | 0 | } |
Unexecuted instantiation: P6bigint.c:MVM_string_gi_move_to Unexecuted instantiation: MVMCallCapture.c:MVM_string_gi_move_to Unexecuted instantiation: SCRef.c:MVM_string_gi_move_to Unexecuted instantiation: MVMContext.c:MVM_string_gi_move_to Unexecuted instantiation: MVMIter.c:MVM_string_gi_move_to Unexecuted instantiation: P6str.c:MVM_string_gi_move_to Unexecuted instantiation: HashAttrStore.c:MVM_string_gi_move_to Unexecuted instantiation: Uninstantiable.c:MVM_string_gi_move_to Unexecuted instantiation: P6num.c:MVM_string_gi_move_to Unexecuted instantiation: P6int.c:MVM_string_gi_move_to Unexecuted instantiation: MVMStaticFrame.c:MVM_string_gi_move_to Unexecuted instantiation: MVMCompUnit.c:MVM_string_gi_move_to Unexecuted instantiation: MVMOSHandle.c:MVM_string_gi_move_to Unexecuted instantiation: MVMCode.c:MVM_string_gi_move_to Unexecuted instantiation: P6opaque.c:MVM_string_gi_move_to Unexecuted instantiation: validation.c:MVM_string_gi_move_to Unexecuted instantiation: ext.c:MVM_string_gi_move_to Unexecuted instantiation: dll.c:MVM_string_gi_move_to coerce.c:MVM_string_gi_move_to Line | Count | Source | 77 | 9.48k | MVM_STATIC_INLINE void MVM_string_gi_move_to(MVMThreadContext *tc, MVMGraphemeIter *gi, MVMuint32 pos) { | 78 | 9.48k | MVMuint32 remaining = pos; | 79 | 9.48k | MVMuint32 strand_graphs; | 80 | 9.48k | MVMStringStrand *next = NULL; | 81 | 9.48k | | 82 | 9.48k | /* Find the appropriate strand. */ | 83 | 9.48k | /* Set strand_graphs to the number of graphemes */ | 84 | 9.48k | while (remaining > (strand_graphs = MVM_string_gi_graphs_left_in_strand_rep(gi))) { | 85 | 0 | remaining -= strand_graphs; | 86 | 0 | if (!(gi->strands_remaining--)) | 87 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator"); | 88 | 0 | next = (gi->next_strand)++; | 89 | 0 | gi->pos = gi->start = next->start; | 90 | 0 | gi->end = next->end; | 91 | 0 | gi->repetitions = next->repetitions; | 92 | 0 | } | 93 | 9.48k | if (next) { | 94 | 0 | gi->blob_type = next->blob_string->body.storage_type; | 95 | 0 | gi->active_blob.any = next->blob_string->body.storage.any; | 96 | 0 | } | 97 | 9.48k | | 98 | 9.48k | /* Now look within the strand. */ | 99 | 9.48k | if (!remaining) | 100 | 6.34k | return; | 101 | 9.48k | /* Most common case where we move within the strand */ | 102 | 3.13k | if (gi->pos + remaining <= gi->end) { | 103 | 3.13k | gi->pos += remaining; | 104 | 3.13k | return; | 105 | 3.13k | } | 106 | 3.13k | /* If we are here we are encountering a repetition */ | 107 | 0 | if (gi->repetitions) { | 108 | 0 | MVMuint32 rep_graphs = gi->end - gi->start; | 109 | 0 | MVMuint32 remaining_reps; | 110 | 0 | /* If we aren't at the end of the repetition, move to the end */ | 111 | 0 | if (gi->pos < gi->end) { | 112 | 0 | remaining -= gi->end - gi->pos; | 113 | 0 | gi->pos = gi->end; | 114 | 0 | } | 115 | 0 | remaining_reps = remaining / rep_graphs; | 116 | 0 | if (gi->repetitions < remaining_reps) | 117 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator:" | 118 | 0 | " no more repetitions remaining\n"); | 119 | 0 | gi->repetitions -= remaining_reps; | 120 | 0 | /* Since we're still at the end, if there's repetitions left over | 121 | 0 | * we are going to have to seek forward */ | 122 | 0 | if (remaining -= remaining_reps * rep_graphs) { | 123 | 0 | gi->repetitions--; /* Move to the next repetition. */ | 124 | 0 | gi->pos = gi->start + remaining; | 125 | 0 | /* remaining = 0 now for all purposes now, but since we return, no | 126 | 0 | * need to set it */ | 127 | 0 | } | 128 | 0 | return; | 129 | 0 | } | 130 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator"); | 131 | 0 | } |
Unexecuted instantiation: num.c:MVM_string_gi_move_to Unexecuted instantiation: loadbytecode.c:MVM_string_gi_move_to Unexecuted instantiation: hll.c:MVM_string_gi_move_to ops.c:MVM_string_gi_move_to Line | Count | Source | 77 | 138k | MVM_STATIC_INLINE void MVM_string_gi_move_to(MVMThreadContext *tc, MVMGraphemeIter *gi, MVMuint32 pos) { | 78 | 138k | MVMuint32 remaining = pos; | 79 | 138k | MVMuint32 strand_graphs; | 80 | 138k | MVMStringStrand *next = NULL; | 81 | 138k | | 82 | 138k | /* Find the appropriate strand. */ | 83 | 138k | /* Set strand_graphs to the number of graphemes */ | 84 | 144k | while (remaining > (strand_graphs = MVM_string_gi_graphs_left_in_strand_rep(gi))) { | 85 | 5.06k | remaining -= strand_graphs; | 86 | 5.06k | if (!(gi->strands_remaining--)) | 87 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator"); | 88 | 5.06k | next = (gi->next_strand)++; | 89 | 5.06k | gi->pos = gi->start = next->start; | 90 | 5.06k | gi->end = next->end; | 91 | 5.06k | gi->repetitions = next->repetitions; | 92 | 5.06k | } | 93 | 138k | if (next) { | 94 | 2.86k | gi->blob_type = next->blob_string->body.storage_type; | 95 | 2.86k | gi->active_blob.any = next->blob_string->body.storage.any; | 96 | 2.86k | } | 97 | 138k | | 98 | 138k | /* Now look within the strand. */ | 99 | 138k | if (!remaining) | 100 | 78.1k | return; | 101 | 138k | /* Most common case where we move within the strand */ | 102 | 60.7k | if (gi->pos + remaining <= gi->end) { | 103 | 55.4k | gi->pos += remaining; | 104 | 55.4k | return; | 105 | 55.4k | } | 106 | 60.7k | /* If we are here we are encountering a repetition */ | 107 | 5.36k | if (gi->repetitions) { | 108 | 5.36k | MVMuint32 rep_graphs = gi->end - gi->start; | 109 | 5.36k | MVMuint32 remaining_reps; | 110 | 5.36k | /* If we aren't at the end of the repetition, move to the end */ | 111 | 5.36k | if (gi->pos < gi->end) { | 112 | 5.36k | remaining -= gi->end - gi->pos; | 113 | 5.36k | gi->pos = gi->end; | 114 | 5.36k | } | 115 | 5.36k | remaining_reps = remaining / rep_graphs; | 116 | 5.36k | if (gi->repetitions < remaining_reps) | 117 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator:" | 118 | 0 | " no more repetitions remaining\n"); | 119 | 5.36k | gi->repetitions -= remaining_reps; | 120 | 5.36k | /* Since we're still at the end, if there's repetitions left over | 121 | 5.36k | * we are going to have to seek forward */ | 122 | 5.36k | if (remaining -= remaining_reps * rep_graphs) { | 123 | 4.97k | gi->repetitions--; /* Move to the next repetition. */ | 124 | 4.97k | gi->pos = gi->start + remaining; | 125 | 4.97k | /* remaining = 0 now for all purposes now, but since we return, no | 126 | 4.97k | * need to set it */ | 127 | 4.97k | } | 128 | 5.36k | return; | 129 | 5.36k | } | 130 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator"); | 131 | 0 | } |
Unexecuted instantiation: threads.c:MVM_string_gi_move_to Unexecuted instantiation: bytecodedump.c:MVM_string_gi_move_to Unexecuted instantiation: nativecall.c:MVM_string_gi_move_to Unexecuted instantiation: callstack.c:MVM_string_gi_move_to Unexecuted instantiation: frame.c:MVM_string_gi_move_to Unexecuted instantiation: bytecode.c:MVM_string_gi_move_to Unexecuted instantiation: compunit.c:MVM_string_gi_move_to Unexecuted instantiation: threadcontext.c:MVM_string_gi_move_to Unexecuted instantiation: interp.c:MVM_string_gi_move_to Unexecuted instantiation: exceptions.c:MVM_string_gi_move_to Unexecuted instantiation: args.c:MVM_string_gi_move_to Unexecuted instantiation: callsite.c:MVM_string_gi_move_to Unexecuted instantiation: worklist.c:MVM_string_gi_move_to Unexecuted instantiation: eventloop.c:MVM_string_gi_move_to Unexecuted instantiation: io.c:MVM_string_gi_move_to Unexecuted instantiation: debug.c:MVM_string_gi_move_to Unexecuted instantiation: finalize.c:MVM_string_gi_move_to Unexecuted instantiation: objectid.c:MVM_string_gi_move_to Unexecuted instantiation: wb.c:MVM_string_gi_move_to Unexecuted instantiation: gen2.c:MVM_string_gi_move_to Unexecuted instantiation: collect.c:MVM_string_gi_move_to Unexecuted instantiation: roots.c:MVM_string_gi_move_to Unexecuted instantiation: syncfile.c:MVM_string_gi_move_to Unexecuted instantiation: allocation.c:MVM_string_gi_move_to Unexecuted instantiation: orchestrate.c:MVM_string_gi_move_to Unexecuted instantiation: config.c:MVM_string_gi_move_to Unexecuted instantiation: debugserver.c:MVM_string_gi_move_to Unexecuted instantiation: regionalloc.c:MVM_string_gi_move_to Unexecuted instantiation: fixedsizealloc.c:MVM_string_gi_move_to Unexecuted instantiation: intcache.c:MVM_string_gi_move_to Unexecuted instantiation: continuation.c:MVM_string_gi_move_to Unexecuted instantiation: utf8_c8.c:MVM_string_gi_move_to Unexecuted instantiation: bigintops.c:MVM_string_gi_move_to Unexecuted instantiation: shiftjis_codeindex.c:MVM_string_gi_move_to Unexecuted instantiation: shiftjis.c:MVM_string_gi_move_to Unexecuted instantiation: windows1252.c:MVM_string_gi_move_to Unexecuted instantiation: utf16.c:MVM_string_gi_move_to Unexecuted instantiation: latin1.c:MVM_string_gi_move_to Unexecuted instantiation: normalize.c:MVM_string_gi_move_to Unexecuted instantiation: unicode.c:MVM_string_gi_move_to nfg.c:MVM_string_gi_move_to Line | Count | Source | 77 | 2.38M | MVM_STATIC_INLINE void MVM_string_gi_move_to(MVMThreadContext *tc, MVMGraphemeIter *gi, MVMuint32 pos) { | 78 | 2.38M | MVMuint32 remaining = pos; | 79 | 2.38M | MVMuint32 strand_graphs; | 80 | 2.38M | MVMStringStrand *next = NULL; | 81 | 2.38M | | 82 | 2.38M | /* Find the appropriate strand. */ | 83 | 2.38M | /* Set strand_graphs to the number of graphemes */ | 84 | 3.10M | while (remaining > (strand_graphs = MVM_string_gi_graphs_left_in_strand_rep(gi))) { | 85 | 722k | remaining -= strand_graphs; | 86 | 722k | if (!(gi->strands_remaining--)) | 87 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator"); | 88 | 722k | next = (gi->next_strand)++; | 89 | 722k | gi->pos = gi->start = next->start; | 90 | 722k | gi->end = next->end; | 91 | 722k | gi->repetitions = next->repetitions; | 92 | 722k | } | 93 | 2.38M | if (next) { | 94 | 270k | gi->blob_type = next->blob_string->body.storage_type; | 95 | 270k | gi->active_blob.any = next->blob_string->body.storage.any; | 96 | 270k | } | 97 | 2.38M | | 98 | 2.38M | /* Now look within the strand. */ | 99 | 2.38M | if (!remaining) | 100 | 1.08M | return; | 101 | 2.38M | /* Most common case where we move within the strand */ | 102 | 1.29M | if (gi->pos + remaining <= gi->end) { | 103 | 96.8k | gi->pos += remaining; | 104 | 96.8k | return; | 105 | 96.8k | } | 106 | 1.29M | /* If we are here we are encountering a repetition */ | 107 | 1.20M | if (gi->repetitions) { | 108 | 1.20M | MVMuint32 rep_graphs = gi->end - gi->start; | 109 | 1.20M | MVMuint32 remaining_reps; | 110 | 1.20M | /* If we aren't at the end of the repetition, move to the end */ | 111 | 1.20M | if (gi->pos < gi->end) { | 112 | 1.20M | remaining -= gi->end - gi->pos; | 113 | 1.20M | gi->pos = gi->end; | 114 | 1.20M | } | 115 | 1.20M | remaining_reps = remaining / rep_graphs; | 116 | 1.20M | if (gi->repetitions < remaining_reps) | 117 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator:" | 118 | 0 | " no more repetitions remaining\n"); | 119 | 1.20M | gi->repetitions -= remaining_reps; | 120 | 1.20M | /* Since we're still at the end, if there's repetitions left over | 121 | 1.20M | * we are going to have to seek forward */ | 122 | 1.20M | if (remaining -= remaining_reps * rep_graphs) { | 123 | 1.00M | gi->repetitions--; /* Move to the next repetition. */ | 124 | 1.00M | gi->pos = gi->start + remaining; | 125 | 1.00M | /* remaining = 0 now for all purposes now, but since we return, no | 126 | 1.00M | * need to set it */ | 127 | 1.00M | } | 128 | 1.20M | return; | 129 | 1.20M | } | 130 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator"); | 131 | 0 | } |
Unexecuted instantiation: profile.c:MVM_string_gi_move_to Unexecuted instantiation: utf8.c:MVM_string_gi_move_to Unexecuted instantiation: parse_num.c:MVM_string_gi_move_to Unexecuted instantiation: ascii.c:MVM_string_gi_move_to Unexecuted instantiation: decode_stream.c:MVM_string_gi_move_to Unexecuted instantiation: plugin.c:MVM_string_gi_move_to Unexecuted instantiation: arg_guard.c:MVM_string_gi_move_to Unexecuted instantiation: plan.c:MVM_string_gi_move_to Unexecuted instantiation: stats.c:MVM_string_gi_move_to Unexecuted instantiation: worker.c:MVM_string_gi_move_to Unexecuted instantiation: time.c:MVM_string_gi_move_to Unexecuted instantiation: MVMContinuation.c:MVM_string_gi_move_to Unexecuted instantiation: arch.c:MVM_string_gi_move_to Unexecuted instantiation: emit.c:MVM_string_gi_move_to Unexecuted instantiation: interface.c:MVM_string_gi_move_to Unexecuted instantiation: linear_scan.c:MVM_string_gi_move_to Unexecuted instantiation: tile.c:MVM_string_gi_move_to Unexecuted instantiation: expr.c:MVM_string_gi_move_to Unexecuted instantiation: compile.c:MVM_string_gi_move_to Unexecuted instantiation: label.c:MVM_string_gi_move_to Unexecuted instantiation: instrument.c:MVM_string_gi_move_to Unexecuted instantiation: mmap.c:MVM_string_gi_move_to Unexecuted instantiation: moar.c:MVM_string_gi_move_to Unexecuted instantiation: memmem32.c:MVM_string_gi_move_to Unexecuted instantiation: random.c:MVM_string_gi_move_to Unexecuted instantiation: sys.c:MVM_string_gi_move_to Unexecuted instantiation: line_coverage.c:MVM_string_gi_move_to Unexecuted instantiation: crossthreadwrite.c:MVM_string_gi_move_to Unexecuted instantiation: telemeh.c:MVM_string_gi_move_to Unexecuted instantiation: heapsnapshot.c:MVM_string_gi_move_to Unexecuted instantiation: ConcBlockingQueue.c:MVM_string_gi_move_to Unexecuted instantiation: 6model.c:MVM_string_gi_move_to Unexecuted instantiation: MVMStaticFrameSpesh.c:MVM_string_gi_move_to Unexecuted instantiation: MVMSpeshLog.c:MVM_string_gi_move_to Unexecuted instantiation: Decoder.c:MVM_string_gi_move_to Unexecuted instantiation: MultiDimArray.c:MVM_string_gi_move_to Unexecuted instantiation: NativeRef.c:MVM_string_gi_move_to Unexecuted instantiation: CPPStruct.c:MVM_string_gi_move_to Unexecuted instantiation: MVMNull.c:MVM_string_gi_move_to Unexecuted instantiation: MVMAsyncTask.c:MVM_string_gi_move_to Unexecuted instantiation: lookup.c:MVM_string_gi_move_to Unexecuted instantiation: Semaphore.c:MVM_string_gi_move_to Unexecuted instantiation: ConditionVariable.c:MVM_string_gi_move_to Unexecuted instantiation: ReentrantMutex.c:MVM_string_gi_move_to Unexecuted instantiation: CUnion.c:MVM_string_gi_move_to Unexecuted instantiation: CStruct.c:MVM_string_gi_move_to Unexecuted instantiation: CArray.c:MVM_string_gi_move_to Unexecuted instantiation: CStr.c:MVM_string_gi_move_to Unexecuted instantiation: CPointer.c:MVM_string_gi_move_to Unexecuted instantiation: NativeCall.c:MVM_string_gi_move_to Unexecuted instantiation: deopt.c:MVM_string_gi_move_to Unexecuted instantiation: bootstrap.c:MVM_string_gi_move_to Unexecuted instantiation: osr.c:MVM_string_gi_move_to Unexecuted instantiation: inline.c:MVM_string_gi_move_to Unexecuted instantiation: threshold.c:MVM_string_gi_move_to Unexecuted instantiation: log.c:MVM_string_gi_move_to Unexecuted instantiation: dead_bb_elimination.c:MVM_string_gi_move_to Unexecuted instantiation: optimize.c:MVM_string_gi_move_to Unexecuted instantiation: facts.c:MVM_string_gi_move_to Unexecuted instantiation: manipulate.c:MVM_string_gi_move_to Unexecuted instantiation: codegen.c:MVM_string_gi_move_to Unexecuted instantiation: iterator.c:MVM_string_gi_move_to Unexecuted instantiation: sc.c:MVM_string_gi_move_to Unexecuted instantiation: serialization.c:MVM_string_gi_move_to Unexecuted instantiation: compiler.c:MVM_string_gi_move_to Unexecuted instantiation: driver.c:MVM_string_gi_move_to Unexecuted instantiation: dump.c:MVM_string_gi_move_to Unexecuted instantiation: graph.c:MVM_string_gi_move_to Unexecuted instantiation: candidate.c:MVM_string_gi_move_to |
132 | | |
133 | | /* Checks if there is more to read from a grapheme iterator. */ |
134 | 15.4M | MVM_STATIC_INLINE MVMint32 MVM_string_gi_has_more(MVMThreadContext *tc, MVMGraphemeIter *gi) { |
135 | 2.16M | return gi->pos < gi->end || gi->repetitions || gi->strands_remaining; |
136 | 15.4M | } Unexecuted instantiation: sc.c:MVM_string_gi_has_more Unexecuted instantiation: MVMAsyncTask.c:MVM_string_gi_has_more Unexecuted instantiation: serialization.c:MVM_string_gi_has_more compiler.c:MVM_string_gi_has_more Line | Count | Source | 134 | 412k | MVM_STATIC_INLINE MVMint32 MVM_string_gi_has_more(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 135 | 37.4k | return gi->pos < gi->end || gi->repetitions || gi->strands_remaining; | 136 | 412k | } |
Unexecuted instantiation: driver.c:MVM_string_gi_has_more Unexecuted instantiation: dump.c:MVM_string_gi_has_more Unexecuted instantiation: graph.c:MVM_string_gi_has_more Unexecuted instantiation: codegen.c:MVM_string_gi_has_more Unexecuted instantiation: candidate.c:MVM_string_gi_has_more Unexecuted instantiation: manipulate.c:MVM_string_gi_has_more Unexecuted instantiation: facts.c:MVM_string_gi_has_more Unexecuted instantiation: optimize.c:MVM_string_gi_has_more Unexecuted instantiation: dead_bb_elimination.c:MVM_string_gi_has_more Unexecuted instantiation: deopt.c:MVM_string_gi_has_more Unexecuted instantiation: log.c:MVM_string_gi_has_more Unexecuted instantiation: threshold.c:MVM_string_gi_has_more Unexecuted instantiation: inline.c:MVM_string_gi_has_more Unexecuted instantiation: osr.c:MVM_string_gi_has_more Unexecuted instantiation: lookup.c:MVM_string_gi_has_more Unexecuted instantiation: Semaphore.c:MVM_string_gi_has_more Unexecuted instantiation: NativeCall.c:MVM_string_gi_has_more Unexecuted instantiation: syncsocket.c:MVM_string_gi_has_more Unexecuted instantiation: CPointer.c:MVM_string_gi_has_more Unexecuted instantiation: CStr.c:MVM_string_gi_has_more Unexecuted instantiation: CArray.c:MVM_string_gi_has_more Unexecuted instantiation: CStruct.c:MVM_string_gi_has_more Unexecuted instantiation: CUnion.c:MVM_string_gi_has_more Unexecuted instantiation: ReentrantMutex.c:MVM_string_gi_has_more Unexecuted instantiation: ConditionVariable.c:MVM_string_gi_has_more Unexecuted instantiation: bootstrap.c:MVM_string_gi_has_more Unexecuted instantiation: ConcBlockingQueue.c:MVM_string_gi_has_more Unexecuted instantiation: MVMNull.c:MVM_string_gi_has_more Unexecuted instantiation: CPPStruct.c:MVM_string_gi_has_more Unexecuted instantiation: NativeRef.c:MVM_string_gi_has_more Unexecuted instantiation: MultiDimArray.c:MVM_string_gi_has_more Unexecuted instantiation: Decoder.c:MVM_string_gi_has_more Unexecuted instantiation: MVMSpeshLog.c:MVM_string_gi_has_more Unexecuted instantiation: MVMStaticFrameSpesh.c:MVM_string_gi_has_more Unexecuted instantiation: 6model.c:MVM_string_gi_has_more Unexecuted instantiation: mmap.c:MVM_string_gi_has_more Unexecuted instantiation: profile.c:MVM_string_gi_has_more Unexecuted instantiation: heapsnapshot.c:MVM_string_gi_has_more Unexecuted instantiation: telemeh.c:MVM_string_gi_has_more Unexecuted instantiation: crossthreadwrite.c:MVM_string_gi_has_more Unexecuted instantiation: line_coverage.c:MVM_string_gi_has_more Unexecuted instantiation: sys.c:MVM_string_gi_has_more Unexecuted instantiation: random.c:MVM_string_gi_has_more Unexecuted instantiation: memmem32.c:MVM_string_gi_has_more Unexecuted instantiation: moar.c:MVM_string_gi_has_more Unexecuted instantiation: instrument.c:MVM_string_gi_has_more Unexecuted instantiation: time.c:MVM_string_gi_has_more Unexecuted instantiation: label.c:MVM_string_gi_has_more Unexecuted instantiation: compile.c:MVM_string_gi_has_more Unexecuted instantiation: expr.c:MVM_string_gi_has_more Unexecuted instantiation: tile.c:MVM_string_gi_has_more Unexecuted instantiation: linear_scan.c:MVM_string_gi_has_more Unexecuted instantiation: interface.c:MVM_string_gi_has_more Unexecuted instantiation: emit.c:MVM_string_gi_has_more Unexecuted instantiation: arch.c:MVM_string_gi_has_more utf8_c8.c:MVM_string_gi_has_more Line | Count | Source | 134 | 95.0k | MVM_STATIC_INLINE MVMint32 MVM_string_gi_has_more(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 135 | 8.68k | return gi->pos < gi->end || gi->repetitions || gi->strands_remaining; | 136 | 95.0k | } |
Unexecuted instantiation: worker.c:MVM_string_gi_has_more Unexecuted instantiation: stats.c:MVM_string_gi_has_more Unexecuted instantiation: plan.c:MVM_string_gi_has_more Unexecuted instantiation: arg_guard.c:MVM_string_gi_has_more Unexecuted instantiation: plugin.c:MVM_string_gi_has_more decode_stream.c:MVM_string_gi_has_more Line | Count | Source | 134 | 2.62k | MVM_STATIC_INLINE MVMint32 MVM_string_gi_has_more(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 135 | 1.30k | return gi->pos < gi->end || gi->repetitions || gi->strands_remaining; | 136 | 2.62k | } |
ascii.c:MVM_string_gi_has_more Line | Count | Source | 134 | 33.6k | MVM_STATIC_INLINE MVMint32 MVM_string_gi_has_more(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 135 | 1.96k | return gi->pos < gi->end || gi->repetitions || gi->strands_remaining; | 136 | 33.6k | } |
parse_num.c:MVM_string_gi_has_more Line | Count | Source | 134 | 80.0k | MVM_STATIC_INLINE MVMint32 MVM_string_gi_has_more(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 135 | 41.3k | return gi->pos < gi->end || gi->repetitions || gi->strands_remaining; | 136 | 80.0k | } |
utf8.c:MVM_string_gi_has_more Line | Count | Source | 134 | 1.37M | MVM_STATIC_INLINE MVMint32 MVM_string_gi_has_more(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 135 | 31.5k | return gi->pos < gi->end || gi->repetitions || gi->strands_remaining; | 136 | 1.37M | } |
Unexecuted instantiation: iterator.c:MVM_string_gi_has_more Unexecuted instantiation: nfg.c:MVM_string_gi_has_more Unexecuted instantiation: unicode.c:MVM_string_gi_has_more normalize.c:MVM_string_gi_has_more Line | Count | Source | 134 | 5 | MVM_STATIC_INLINE MVMint32 MVM_string_gi_has_more(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 135 | 2 | return gi->pos < gi->end || gi->repetitions || gi->strands_remaining; | 136 | 5 | } |
latin1.c:MVM_string_gi_has_more Line | Count | Source | 134 | 412k | MVM_STATIC_INLINE MVMint32 MVM_string_gi_has_more(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 135 | 37.4k | return gi->pos < gi->end || gi->repetitions || gi->strands_remaining; | 136 | 412k | } |
utf16.c:MVM_string_gi_has_more Line | Count | Source | 134 | 2 | MVM_STATIC_INLINE MVMint32 MVM_string_gi_has_more(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 135 | 1 | return gi->pos < gi->end || gi->repetitions || gi->strands_remaining; | 136 | 2 | } |
windows1252.c:MVM_string_gi_has_more Line | Count | Source | 134 | 85 | MVM_STATIC_INLINE MVMint32 MVM_string_gi_has_more(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 135 | 16 | return gi->pos < gi->end || gi->repetitions || gi->strands_remaining; | 136 | 85 | } |
Unexecuted instantiation: shiftjis.c:MVM_string_gi_has_more Unexecuted instantiation: shiftjis_codeindex.c:MVM_string_gi_has_more Unexecuted instantiation: bigintops.c:MVM_string_gi_has_more Unexecuted instantiation: worklist.c:MVM_string_gi_has_more Unexecuted instantiation: nativecall_dyncall.c:MVM_string_gi_has_more Unexecuted instantiation: continuation.c:MVM_string_gi_has_more Unexecuted instantiation: intcache.c:MVM_string_gi_has_more Unexecuted instantiation: fixedsizealloc.c:MVM_string_gi_has_more Unexecuted instantiation: regionalloc.c:MVM_string_gi_has_more Unexecuted instantiation: debugserver.c:MVM_string_gi_has_more Unexecuted instantiation: config.c:MVM_string_gi_has_more Unexecuted instantiation: orchestrate.c:MVM_string_gi_has_more Unexecuted instantiation: allocation.c:MVM_string_gi_has_more Unexecuted instantiation: nativecall.c:MVM_string_gi_has_more Unexecuted instantiation: roots.c:MVM_string_gi_has_more Unexecuted instantiation: collect.c:MVM_string_gi_has_more Unexecuted instantiation: gen2.c:MVM_string_gi_has_more Unexecuted instantiation: wb.c:MVM_string_gi_has_more Unexecuted instantiation: objectid.c:MVM_string_gi_has_more Unexecuted instantiation: finalize.c:MVM_string_gi_has_more Unexecuted instantiation: debug.c:MVM_string_gi_has_more Unexecuted instantiation: io.c:MVM_string_gi_has_more Unexecuted instantiation: eventloop.c:MVM_string_gi_has_more Unexecuted instantiation: validation.c:MVM_string_gi_has_more Unexecuted instantiation: callsite.c:MVM_string_gi_has_more Unexecuted instantiation: args.c:MVM_string_gi_has_more Unexecuted instantiation: exceptions.c:MVM_string_gi_has_more interp.c:MVM_string_gi_has_more Line | Count | Source | 134 | 13 | MVM_STATIC_INLINE MVMint32 MVM_string_gi_has_more(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 135 | 5 | return gi->pos < gi->end || gi->repetitions || gi->strands_remaining; | 136 | 13 | } |
Unexecuted instantiation: threadcontext.c:MVM_string_gi_has_more Unexecuted instantiation: compunit.c:MVM_string_gi_has_more Unexecuted instantiation: bytecode.c:MVM_string_gi_has_more Unexecuted instantiation: frame.c:MVM_string_gi_has_more Unexecuted instantiation: callstack.c:MVM_string_gi_has_more Unexecuted instantiation: MVMMultiCache.c:MVM_string_gi_has_more Unexecuted instantiation: bytecodedump.c:MVM_string_gi_has_more Unexecuted instantiation: threads.c:MVM_string_gi_has_more ops.c:MVM_string_gi_has_more Line | Count | Source | 134 | 13.0M | MVM_STATIC_INLINE MVMint32 MVM_string_gi_has_more(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 135 | 2.00M | return gi->pos < gi->end || gi->repetitions || gi->strands_remaining; | 136 | 13.0M | } |
Unexecuted instantiation: hll.c:MVM_string_gi_has_more Unexecuted instantiation: loadbytecode.c:MVM_string_gi_has_more Unexecuted instantiation: num.c:MVM_string_gi_has_more Unexecuted instantiation: coerce.c:MVM_string_gi_has_more Unexecuted instantiation: dll.c:MVM_string_gi_has_more Unexecuted instantiation: ext.c:MVM_string_gi_has_more Unexecuted instantiation: MVMThread.c:MVM_string_gi_has_more Unexecuted instantiation: P6opaque.c:MVM_string_gi_has_more Unexecuted instantiation: MVMCode.c:MVM_string_gi_has_more Unexecuted instantiation: MVMOSHandle.c:MVM_string_gi_has_more Unexecuted instantiation: MVMCompUnit.c:MVM_string_gi_has_more Unexecuted instantiation: MVMStaticFrame.c:MVM_string_gi_has_more Unexecuted instantiation: P6int.c:MVM_string_gi_has_more Unexecuted instantiation: P6num.c:MVM_string_gi_has_more Unexecuted instantiation: Uninstantiable.c:MVM_string_gi_has_more Unexecuted instantiation: HashAttrStore.c:MVM_string_gi_has_more Unexecuted instantiation: fileops.c:MVM_string_gi_has_more Unexecuted instantiation: MVMIter.c:MVM_string_gi_has_more Unexecuted instantiation: MVMContext.c:MVM_string_gi_has_more Unexecuted instantiation: SCRef.c:MVM_string_gi_has_more Unexecuted instantiation: MVMCallCapture.c:MVM_string_gi_has_more Unexecuted instantiation: P6bigint.c:MVM_string_gi_has_more Unexecuted instantiation: NFA.c:MVM_string_gi_has_more Unexecuted instantiation: MVMException.c:MVM_string_gi_has_more Unexecuted instantiation: MVMDLLSym.c:MVM_string_gi_has_more Unexecuted instantiation: MVMContinuation.c:MVM_string_gi_has_more Unexecuted instantiation: KnowHOWAttributeREPR.c:MVM_string_gi_has_more Unexecuted instantiation: syncfile.c:MVM_string_gi_has_more Unexecuted instantiation: dirops.c:MVM_string_gi_has_more Unexecuted instantiation: procops.c:MVM_string_gi_has_more Unexecuted instantiation: timers.c:MVM_string_gi_has_more Unexecuted instantiation: filewatchers.c:MVM_string_gi_has_more Unexecuted instantiation: signals.c:MVM_string_gi_has_more Unexecuted instantiation: asyncsocket.c:MVM_string_gi_has_more Unexecuted instantiation: asyncsocketudp.c:MVM_string_gi_has_more Unexecuted instantiation: reprs.c:MVM_string_gi_has_more Unexecuted instantiation: reprconv.c:MVM_string_gi_has_more Unexecuted instantiation: containers.c:MVM_string_gi_has_more Unexecuted instantiation: parametric.c:MVM_string_gi_has_more Unexecuted instantiation: MVMString.c:MVM_string_gi_has_more Unexecuted instantiation: VMArray.c:MVM_string_gi_has_more Unexecuted instantiation: MVMHash.c:MVM_string_gi_has_more Unexecuted instantiation: MVMCFunction.c:MVM_string_gi_has_more Unexecuted instantiation: KnowHOWREPR.c:MVM_string_gi_has_more Unexecuted instantiation: P6str.c:MVM_string_gi_has_more |
137 | | /* Returns number of graphs left in the strand, ignoring repetitions */ |
138 | 56.4k | MVM_STATIC_INLINE MVMStringIndex MVM_string_gi_graphs_left_in_strand(MVMThreadContext *tc, MVMGraphemeIter *gi) { |
139 | 56.4k | return gi->end - gi->pos; |
140 | 56.4k | } Unexecuted instantiation: arch.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: asyncsocketudp.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: KnowHOWREPR.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: MVMCFunction.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: MVMHash.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: VMArray.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: MVMString.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: parametric.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: containers.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: reprconv.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: reprs.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: KnowHOWAttributeREPR.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: asyncsocket.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: signals.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: filewatchers.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: timers.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: procops.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: dirops.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: fileops.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: syncsocket.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: syncfile.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: HashAttrStore.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: MVMDLLSym.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: MVMException.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: NFA.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: P6bigint.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: MVMCallCapture.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: SCRef.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: MVMContext.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: MVMIter.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: MVMThread.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: eventloop.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: Uninstantiable.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: P6num.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: P6int.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: MVMStaticFrame.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: MVMCompUnit.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: MVMOSHandle.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: MVMCode.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: P6opaque.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: P6str.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: validation.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: ext.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: dll.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: coerce.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: num.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: loadbytecode.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: hll.c:MVM_string_gi_graphs_left_in_strand ops.c:MVM_string_gi_graphs_left_in_strand Line | Count | Source | 138 | 56.4k | MVM_STATIC_INLINE MVMStringIndex MVM_string_gi_graphs_left_in_strand(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 139 | 56.4k | return gi->end - gi->pos; | 140 | 56.4k | } |
Unexecuted instantiation: threads.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: bytecodedump.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: nativecall.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: callstack.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: frame.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: bytecode.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: compunit.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: threadcontext.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: interp.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: exceptions.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: args.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: callsite.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: allocation.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: io.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: debug.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: finalize.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: objectid.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: wb.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: gen2.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: collect.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: roots.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: worklist.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: interface.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: orchestrate.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: config.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: debugserver.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: regionalloc.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: fixedsizealloc.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: intcache.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: continuation.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: nativecall_dyncall.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: utf8.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: shiftjis_codeindex.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: shiftjis.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: windows1252.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: utf16.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: latin1.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: normalize.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: unicode.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: nfg.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: utf8_c8.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: bigintops.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: parse_num.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: ascii.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: decode_stream.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: plugin.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: arg_guard.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: plan.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: stats.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: worker.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: iterator.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: memmem32.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: emit.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: linear_scan.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: tile.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: expr.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: compile.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: label.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: time.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: mmap.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: moar.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: MVMContinuation.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: random.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: sys.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: line_coverage.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: crossthreadwrite.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: telemeh.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: heapsnapshot.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: profile.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: instrument.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: Semaphore.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: MVMStaticFrameSpesh.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: MVMSpeshLog.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: Decoder.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: MultiDimArray.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: NativeRef.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: CPPStruct.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: MVMNull.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: MVMAsyncTask.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: ConcBlockingQueue.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: osr.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: ConditionVariable.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: ReentrantMutex.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: CUnion.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: CStruct.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: CArray.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: CStr.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: CPointer.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: NativeCall.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: MVMMultiCache.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: bootstrap.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: lookup.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: inline.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: threshold.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: log.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: deopt.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: dead_bb_elimination.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: optimize.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: facts.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: manipulate.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: candidate.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: codegen.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: graph.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: dump.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: driver.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: compiler.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: serialization.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: sc.c:MVM_string_gi_graphs_left_in_strand Unexecuted instantiation: 6model.c:MVM_string_gi_graphs_left_in_strand |
141 | 24.6k | MVM_STATIC_INLINE MVMGrapheme8 * MVM_string_gi_active_blob_8_pos(MVMThreadContext *tc, MVMGraphemeIter *gi) { |
142 | 24.6k | return gi->active_blob.blob_8 + gi->pos; |
143 | 24.6k | } Unexecuted instantiation: arch.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: asyncsocketudp.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: KnowHOWREPR.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: MVMCFunction.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: MVMHash.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: VMArray.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: MVMString.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: parametric.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: containers.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: reprconv.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: reprs.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: KnowHOWAttributeREPR.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: asyncsocket.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: signals.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: filewatchers.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: timers.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: procops.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: dirops.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: fileops.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: syncsocket.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: syncfile.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: HashAttrStore.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: MVMDLLSym.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: MVMException.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: NFA.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: P6bigint.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: MVMCallCapture.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: SCRef.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: MVMContext.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: MVMIter.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: MVMThread.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: eventloop.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: Uninstantiable.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: P6num.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: P6int.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: MVMStaticFrame.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: MVMCompUnit.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: MVMOSHandle.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: MVMCode.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: P6opaque.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: P6str.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: validation.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: ext.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: dll.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: coerce.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: num.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: loadbytecode.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: hll.c:MVM_string_gi_active_blob_8_pos ops.c:MVM_string_gi_active_blob_8_pos Line | Count | Source | 141 | 24.6k | MVM_STATIC_INLINE MVMGrapheme8 * MVM_string_gi_active_blob_8_pos(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 142 | 24.6k | return gi->active_blob.blob_8 + gi->pos; | 143 | 24.6k | } |
Unexecuted instantiation: threads.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: bytecodedump.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: nativecall.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: callstack.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: frame.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: bytecode.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: compunit.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: threadcontext.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: interp.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: exceptions.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: args.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: callsite.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: allocation.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: io.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: debug.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: finalize.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: objectid.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: wb.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: gen2.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: collect.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: roots.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: worklist.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: MVMMultiCache.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: orchestrate.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: config.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: debugserver.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: regionalloc.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: fixedsizealloc.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: intcache.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: continuation.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: nativecall_dyncall.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: utf8.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: shiftjis_codeindex.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: shiftjis.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: windows1252.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: utf16.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: latin1.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: normalize.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: unicode.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: nfg.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: utf8_c8.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: bigintops.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: parse_num.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: ascii.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: decode_stream.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: plugin.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: arg_guard.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: plan.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: stats.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: worker.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: iterator.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: moar.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: emit.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: interface.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: linear_scan.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: tile.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: expr.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: compile.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: label.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: time.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: mmap.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: lookup.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: memmem32.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: random.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: sys.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: line_coverage.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: crossthreadwrite.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: telemeh.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: heapsnapshot.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: profile.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: instrument.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: Semaphore.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: MVMStaticFrameSpesh.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: MVMSpeshLog.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: Decoder.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: MultiDimArray.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: NativeRef.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: CPPStruct.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: MVMNull.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: MVMAsyncTask.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: ConcBlockingQueue.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: 6model.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: ConditionVariable.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: ReentrantMutex.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: CUnion.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: CStruct.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: CArray.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: CStr.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: CPointer.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: NativeCall.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: MVMContinuation.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: candidate.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: osr.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: inline.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: threshold.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: log.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: deopt.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: dead_bb_elimination.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: optimize.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: facts.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: manipulate.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: codegen.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: graph.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: dump.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: driver.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: compiler.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: serialization.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: sc.c:MVM_string_gi_active_blob_8_pos Unexecuted instantiation: bootstrap.c:MVM_string_gi_active_blob_8_pos |
144 | 7.22k | MVM_STATIC_INLINE MVMGrapheme32 * MVM_string_gi_active_blob_32_pos(MVMThreadContext *tc, MVMGraphemeIter *gi) { |
145 | 7.22k | return gi->active_blob.blob_32 + gi->pos; |
146 | 7.22k | } Unexecuted instantiation: args.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: asyncsocketudp.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: KnowHOWREPR.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: MVMCFunction.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: MVMHash.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: VMArray.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: MVMString.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: parametric.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: containers.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: reprconv.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: reprs.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: KnowHOWAttributeREPR.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: asyncsocket.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: signals.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: filewatchers.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: timers.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: procops.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: dirops.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: fileops.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: syncsocket.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: syncfile.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: HashAttrStore.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: MVMDLLSym.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: MVMException.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: NFA.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: P6bigint.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: MVMCallCapture.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: SCRef.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: MVMContext.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: MVMIter.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: MVMThread.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: eventloop.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: Uninstantiable.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: P6num.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: P6int.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: MVMStaticFrame.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: MVMCompUnit.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: MVMOSHandle.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: MVMCode.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: P6opaque.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: P6str.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: validation.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: ext.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: dll.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: coerce.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: num.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: loadbytecode.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: hll.c:MVM_string_gi_active_blob_32_pos ops.c:MVM_string_gi_active_blob_32_pos Line | Count | Source | 144 | 7.22k | MVM_STATIC_INLINE MVMGrapheme32 * MVM_string_gi_active_blob_32_pos(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 145 | 7.22k | return gi->active_blob.blob_32 + gi->pos; | 146 | 7.22k | } |
Unexecuted instantiation: threads.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: bytecodedump.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: nativecall.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: callstack.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: frame.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: bytecode.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: compunit.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: threadcontext.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: interp.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: exceptions.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: callsite.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: arch.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: allocation.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: io.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: debug.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: finalize.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: objectid.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: wb.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: gen2.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: collect.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: roots.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: worklist.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: emit.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: orchestrate.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: config.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: debugserver.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: regionalloc.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: fixedsizealloc.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: intcache.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: continuation.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: nativecall_dyncall.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: utf8.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: shiftjis_codeindex.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: shiftjis.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: windows1252.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: utf16.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: latin1.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: normalize.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: unicode.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: nfg.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: utf8_c8.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: bigintops.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: parse_num.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: ascii.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: decode_stream.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: plugin.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: arg_guard.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: plan.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: stats.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: worker.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: iterator.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: moar.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: MVMMultiCache.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: interface.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: linear_scan.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: tile.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: expr.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: compile.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: label.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: time.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: mmap.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: MVMContinuation.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: memmem32.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: random.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: sys.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: line_coverage.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: crossthreadwrite.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: telemeh.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: heapsnapshot.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: profile.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: instrument.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: Semaphore.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: MVMStaticFrameSpesh.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: MVMSpeshLog.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: Decoder.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: MultiDimArray.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: NativeRef.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: CPPStruct.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: MVMNull.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: MVMAsyncTask.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: ConcBlockingQueue.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: osr.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: ConditionVariable.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: ReentrantMutex.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: CUnion.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: CStruct.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: CArray.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: CStr.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: CPointer.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: NativeCall.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: lookup.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: bootstrap.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: 6model.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: inline.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: threshold.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: log.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: deopt.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: dead_bb_elimination.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: optimize.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: facts.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: manipulate.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: codegen.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: graph.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: dump.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: driver.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: compiler.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: serialization.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: sc.c:MVM_string_gi_active_blob_32_pos Unexecuted instantiation: candidate.c:MVM_string_gi_active_blob_32_pos |
147 | 56.4k | MVM_STATIC_INLINE MVMuint16 MVM_string_gi_blob_type(MVMThreadContext *tc, MVMGraphemeIter *gi) { |
148 | 56.4k | return gi->blob_type; |
149 | 56.4k | } Unexecuted instantiation: reprconv.c:MVM_string_gi_blob_type Unexecuted instantiation: containers.c:MVM_string_gi_blob_type Unexecuted instantiation: parametric.c:MVM_string_gi_blob_type Unexecuted instantiation: MVMString.c:MVM_string_gi_blob_type Unexecuted instantiation: VMArray.c:MVM_string_gi_blob_type Unexecuted instantiation: MVMHash.c:MVM_string_gi_blob_type Unexecuted instantiation: MVMCFunction.c:MVM_string_gi_blob_type Unexecuted instantiation: KnowHOWREPR.c:MVM_string_gi_blob_type Unexecuted instantiation: KnowHOWAttributeREPR.c:MVM_string_gi_blob_type Unexecuted instantiation: reprs.c:MVM_string_gi_blob_type Unexecuted instantiation: asyncsocketudp.c:MVM_string_gi_blob_type Unexecuted instantiation: asyncsocket.c:MVM_string_gi_blob_type Unexecuted instantiation: signals.c:MVM_string_gi_blob_type Unexecuted instantiation: filewatchers.c:MVM_string_gi_blob_type Unexecuted instantiation: timers.c:MVM_string_gi_blob_type Unexecuted instantiation: procops.c:MVM_string_gi_blob_type Unexecuted instantiation: dirops.c:MVM_string_gi_blob_type Unexecuted instantiation: fileops.c:MVM_string_gi_blob_type Unexecuted instantiation: syncsocket.c:MVM_string_gi_blob_type Unexecuted instantiation: MVMThread.c:MVM_string_gi_blob_type Unexecuted instantiation: MVMMultiCache.c:MVM_string_gi_blob_type Unexecuted instantiation: MVMDLLSym.c:MVM_string_gi_blob_type Unexecuted instantiation: MVMException.c:MVM_string_gi_blob_type Unexecuted instantiation: NFA.c:MVM_string_gi_blob_type Unexecuted instantiation: P6bigint.c:MVM_string_gi_blob_type Unexecuted instantiation: MVMCallCapture.c:MVM_string_gi_blob_type Unexecuted instantiation: SCRef.c:MVM_string_gi_blob_type Unexecuted instantiation: MVMContext.c:MVM_string_gi_blob_type Unexecuted instantiation: MVMIter.c:MVM_string_gi_blob_type Unexecuted instantiation: P6str.c:MVM_string_gi_blob_type Unexecuted instantiation: HashAttrStore.c:MVM_string_gi_blob_type Unexecuted instantiation: Uninstantiable.c:MVM_string_gi_blob_type Unexecuted instantiation: P6num.c:MVM_string_gi_blob_type Unexecuted instantiation: P6int.c:MVM_string_gi_blob_type Unexecuted instantiation: MVMStaticFrame.c:MVM_string_gi_blob_type Unexecuted instantiation: MVMCompUnit.c:MVM_string_gi_blob_type Unexecuted instantiation: MVMOSHandle.c:MVM_string_gi_blob_type Unexecuted instantiation: MVMCode.c:MVM_string_gi_blob_type Unexecuted instantiation: P6opaque.c:MVM_string_gi_blob_type Unexecuted instantiation: validation.c:MVM_string_gi_blob_type Unexecuted instantiation: ext.c:MVM_string_gi_blob_type Unexecuted instantiation: dll.c:MVM_string_gi_blob_type Unexecuted instantiation: coerce.c:MVM_string_gi_blob_type Unexecuted instantiation: num.c:MVM_string_gi_blob_type Unexecuted instantiation: loadbytecode.c:MVM_string_gi_blob_type Unexecuted instantiation: hll.c:MVM_string_gi_blob_type ops.c:MVM_string_gi_blob_type Line | Count | Source | 147 | 56.4k | MVM_STATIC_INLINE MVMuint16 MVM_string_gi_blob_type(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 148 | 56.4k | return gi->blob_type; | 149 | 56.4k | } |
Unexecuted instantiation: threads.c:MVM_string_gi_blob_type Unexecuted instantiation: bytecodedump.c:MVM_string_gi_blob_type Unexecuted instantiation: nativecall.c:MVM_string_gi_blob_type Unexecuted instantiation: callstack.c:MVM_string_gi_blob_type Unexecuted instantiation: frame.c:MVM_string_gi_blob_type Unexecuted instantiation: bytecode.c:MVM_string_gi_blob_type Unexecuted instantiation: compunit.c:MVM_string_gi_blob_type Unexecuted instantiation: threadcontext.c:MVM_string_gi_blob_type Unexecuted instantiation: interp.c:MVM_string_gi_blob_type Unexecuted instantiation: exceptions.c:MVM_string_gi_blob_type Unexecuted instantiation: args.c:MVM_string_gi_blob_type Unexecuted instantiation: callsite.c:MVM_string_gi_blob_type Unexecuted instantiation: worklist.c:MVM_string_gi_blob_type Unexecuted instantiation: eventloop.c:MVM_string_gi_blob_type Unexecuted instantiation: io.c:MVM_string_gi_blob_type Unexecuted instantiation: debug.c:MVM_string_gi_blob_type Unexecuted instantiation: finalize.c:MVM_string_gi_blob_type Unexecuted instantiation: objectid.c:MVM_string_gi_blob_type Unexecuted instantiation: wb.c:MVM_string_gi_blob_type Unexecuted instantiation: gen2.c:MVM_string_gi_blob_type Unexecuted instantiation: collect.c:MVM_string_gi_blob_type Unexecuted instantiation: roots.c:MVM_string_gi_blob_type Unexecuted instantiation: syncfile.c:MVM_string_gi_blob_type Unexecuted instantiation: allocation.c:MVM_string_gi_blob_type Unexecuted instantiation: orchestrate.c:MVM_string_gi_blob_type Unexecuted instantiation: config.c:MVM_string_gi_blob_type Unexecuted instantiation: debugserver.c:MVM_string_gi_blob_type Unexecuted instantiation: regionalloc.c:MVM_string_gi_blob_type Unexecuted instantiation: fixedsizealloc.c:MVM_string_gi_blob_type Unexecuted instantiation: intcache.c:MVM_string_gi_blob_type Unexecuted instantiation: continuation.c:MVM_string_gi_blob_type Unexecuted instantiation: nativecall_dyncall.c:MVM_string_gi_blob_type Unexecuted instantiation: nfg.c:MVM_string_gi_blob_type Unexecuted instantiation: instrument.c:MVM_string_gi_blob_type Unexecuted instantiation: bigintops.c:MVM_string_gi_blob_type Unexecuted instantiation: shiftjis_codeindex.c:MVM_string_gi_blob_type Unexecuted instantiation: shiftjis.c:MVM_string_gi_blob_type Unexecuted instantiation: windows1252.c:MVM_string_gi_blob_type Unexecuted instantiation: utf16.c:MVM_string_gi_blob_type Unexecuted instantiation: latin1.c:MVM_string_gi_blob_type Unexecuted instantiation: normalize.c:MVM_string_gi_blob_type Unexecuted instantiation: unicode.c:MVM_string_gi_blob_type Unexecuted instantiation: profile.c:MVM_string_gi_blob_type Unexecuted instantiation: utf8_c8.c:MVM_string_gi_blob_type Unexecuted instantiation: utf8.c:MVM_string_gi_blob_type Unexecuted instantiation: parse_num.c:MVM_string_gi_blob_type Unexecuted instantiation: ascii.c:MVM_string_gi_blob_type Unexecuted instantiation: decode_stream.c:MVM_string_gi_blob_type Unexecuted instantiation: plugin.c:MVM_string_gi_blob_type Unexecuted instantiation: arg_guard.c:MVM_string_gi_blob_type Unexecuted instantiation: plan.c:MVM_string_gi_blob_type Unexecuted instantiation: stats.c:MVM_string_gi_blob_type Unexecuted instantiation: time.c:MVM_string_gi_blob_type Unexecuted instantiation: MVMContinuation.c:MVM_string_gi_blob_type Unexecuted instantiation: arch.c:MVM_string_gi_blob_type Unexecuted instantiation: emit.c:MVM_string_gi_blob_type Unexecuted instantiation: interface.c:MVM_string_gi_blob_type Unexecuted instantiation: linear_scan.c:MVM_string_gi_blob_type Unexecuted instantiation: tile.c:MVM_string_gi_blob_type Unexecuted instantiation: expr.c:MVM_string_gi_blob_type Unexecuted instantiation: compile.c:MVM_string_gi_blob_type Unexecuted instantiation: label.c:MVM_string_gi_blob_type Unexecuted instantiation: worker.c:MVM_string_gi_blob_type Unexecuted instantiation: mmap.c:MVM_string_gi_blob_type Unexecuted instantiation: moar.c:MVM_string_gi_blob_type Unexecuted instantiation: memmem32.c:MVM_string_gi_blob_type Unexecuted instantiation: random.c:MVM_string_gi_blob_type Unexecuted instantiation: sys.c:MVM_string_gi_blob_type Unexecuted instantiation: line_coverage.c:MVM_string_gi_blob_type Unexecuted instantiation: crossthreadwrite.c:MVM_string_gi_blob_type Unexecuted instantiation: telemeh.c:MVM_string_gi_blob_type Unexecuted instantiation: heapsnapshot.c:MVM_string_gi_blob_type Unexecuted instantiation: MVMAsyncTask.c:MVM_string_gi_blob_type Unexecuted instantiation: bootstrap.c:MVM_string_gi_blob_type Unexecuted instantiation: 6model.c:MVM_string_gi_blob_type Unexecuted instantiation: MVMStaticFrameSpesh.c:MVM_string_gi_blob_type Unexecuted instantiation: MVMSpeshLog.c:MVM_string_gi_blob_type Unexecuted instantiation: Decoder.c:MVM_string_gi_blob_type Unexecuted instantiation: MultiDimArray.c:MVM_string_gi_blob_type Unexecuted instantiation: NativeRef.c:MVM_string_gi_blob_type Unexecuted instantiation: CPPStruct.c:MVM_string_gi_blob_type Unexecuted instantiation: MVMNull.c:MVM_string_gi_blob_type Unexecuted instantiation: sc.c:MVM_string_gi_blob_type Unexecuted instantiation: ConcBlockingQueue.c:MVM_string_gi_blob_type Unexecuted instantiation: Semaphore.c:MVM_string_gi_blob_type Unexecuted instantiation: ConditionVariable.c:MVM_string_gi_blob_type Unexecuted instantiation: ReentrantMutex.c:MVM_string_gi_blob_type Unexecuted instantiation: CUnion.c:MVM_string_gi_blob_type Unexecuted instantiation: CStruct.c:MVM_string_gi_blob_type Unexecuted instantiation: CArray.c:MVM_string_gi_blob_type Unexecuted instantiation: CStr.c:MVM_string_gi_blob_type Unexecuted instantiation: CPointer.c:MVM_string_gi_blob_type Unexecuted instantiation: facts.c:MVM_string_gi_blob_type Unexecuted instantiation: iterator.c:MVM_string_gi_blob_type Unexecuted instantiation: lookup.c:MVM_string_gi_blob_type Unexecuted instantiation: osr.c:MVM_string_gi_blob_type Unexecuted instantiation: inline.c:MVM_string_gi_blob_type Unexecuted instantiation: threshold.c:MVM_string_gi_blob_type Unexecuted instantiation: log.c:MVM_string_gi_blob_type Unexecuted instantiation: deopt.c:MVM_string_gi_blob_type Unexecuted instantiation: dead_bb_elimination.c:MVM_string_gi_blob_type Unexecuted instantiation: optimize.c:MVM_string_gi_blob_type Unexecuted instantiation: NativeCall.c:MVM_string_gi_blob_type Unexecuted instantiation: manipulate.c:MVM_string_gi_blob_type Unexecuted instantiation: candidate.c:MVM_string_gi_blob_type Unexecuted instantiation: codegen.c:MVM_string_gi_blob_type Unexecuted instantiation: graph.c:MVM_string_gi_blob_type Unexecuted instantiation: dump.c:MVM_string_gi_blob_type Unexecuted instantiation: driver.c:MVM_string_gi_blob_type Unexecuted instantiation: compiler.c:MVM_string_gi_blob_type Unexecuted instantiation: serialization.c:MVM_string_gi_blob_type |
150 | | /* Returns if there are more strands left in the gi, including repetitions */ |
151 | 43.1k | MVM_STATIC_INLINE int MVM_string_gi_has_more_strands_rep(MVMThreadContext *tc, MVMGraphemeIter *gi) { |
152 | 50 | return !!(gi->strands_remaining || gi->repetitions); |
153 | 43.1k | } Unexecuted instantiation: manipulate.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: bootstrap.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: sc.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: serialization.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: compiler.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: driver.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: dump.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: graph.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: codegen.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: candidate.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: 6model.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: facts.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: optimize.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: dead_bb_elimination.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: deopt.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: log.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: threshold.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: inline.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: osr.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: lookup.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: Semaphore.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: MVMContinuation.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: NativeCall.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: CPointer.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: CStr.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: CArray.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: CStruct.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: CUnion.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: ReentrantMutex.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: ConditionVariable.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: iterator.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: ConcBlockingQueue.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: MVMAsyncTask.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: MVMNull.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: CPPStruct.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: NativeRef.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: MultiDimArray.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: Decoder.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: MVMSpeshLog.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: MVMStaticFrameSpesh.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: mmap.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: profile.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: heapsnapshot.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: telemeh.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: crossthreadwrite.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: line_coverage.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: sys.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: random.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: memmem32.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: moar.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: instrument.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: time.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: label.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: compile.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: expr.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: tile.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: linear_scan.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: interface.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: emit.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: arch.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: utf8_c8.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: worker.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: stats.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: plan.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: arg_guard.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: plugin.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: decode_stream.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: ascii.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: parse_num.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: utf8.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: MVMMultiCache.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: nfg.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: unicode.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: normalize.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: latin1.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: utf16.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: windows1252.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: shiftjis.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: shiftjis_codeindex.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: bigintops.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: worklist.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: nativecall_dyncall.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: continuation.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: intcache.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: fixedsizealloc.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: regionalloc.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: debugserver.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: config.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: orchestrate.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: allocation.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: nativecall.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: roots.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: collect.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: gen2.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: wb.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: objectid.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: finalize.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: debug.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: io.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: eventloop.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: validation.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: callsite.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: args.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: exceptions.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: interp.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: threadcontext.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: compunit.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: bytecode.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: frame.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: callstack.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: syncfile.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: bytecodedump.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: threads.c:MVM_string_gi_has_more_strands_rep ops.c:MVM_string_gi_has_more_strands_rep Line | Count | Source | 151 | 43.1k | MVM_STATIC_INLINE int MVM_string_gi_has_more_strands_rep(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 152 | 50 | return !!(gi->strands_remaining || gi->repetitions); | 153 | 43.1k | } |
Unexecuted instantiation: hll.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: loadbytecode.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: num.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: coerce.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: dll.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: ext.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: HashAttrStore.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: P6str.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: P6opaque.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: MVMCode.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: MVMOSHandle.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: MVMCompUnit.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: MVMStaticFrame.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: P6int.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: P6num.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: Uninstantiable.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: KnowHOWAttributeREPR.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: MVMThread.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: MVMIter.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: MVMContext.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: SCRef.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: MVMCallCapture.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: P6bigint.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: NFA.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: MVMException.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: MVMDLLSym.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: reprs.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: syncsocket.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: fileops.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: dirops.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: procops.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: timers.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: filewatchers.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: signals.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: asyncsocket.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: asyncsocketudp.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: reprconv.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: containers.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: parametric.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: MVMString.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: VMArray.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: MVMHash.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: MVMCFunction.c:MVM_string_gi_has_more_strands_rep Unexecuted instantiation: KnowHOWREPR.c:MVM_string_gi_has_more_strands_rep |
154 | | /* Gets the next grapheme. */ |
155 | 35.5M | MVM_STATIC_INLINE MVMGrapheme32 MVM_string_gi_get_grapheme(MVMThreadContext *tc, MVMGraphemeIter *gi) { |
156 | 38.4M | while (1) { |
157 | 38.4M | if (gi->pos < gi->end) { |
158 | 35.5M | switch (gi->blob_type) { |
159 | 25.8M | case MVM_STRING_GRAPHEME_32: |
160 | 25.8M | return gi->active_blob.blob_32[gi->pos++]; |
161 | 0 | case MVM_STRING_GRAPHEME_ASCII: |
162 | 0 | return gi->active_blob.blob_ascii[gi->pos++]; |
163 | 9.61M | case MVM_STRING_GRAPHEME_8: |
164 | 9.61M | return gi->active_blob.blob_8[gi->pos++]; |
165 | 35.5M | } |
166 | 35.5M | } |
167 | 2.94M | else if (gi->repetitions) { |
168 | 2.23M | gi->pos = gi->start; |
169 | 2.23M | gi->repetitions--; |
170 | 2.23M | } |
171 | 718k | else if (gi->strands_remaining) { |
172 | 718k | MVMStringStrand *next = gi->next_strand; |
173 | 718k | gi->active_blob.any = next->blob_string->body.storage.any; |
174 | 718k | gi->blob_type = next->blob_string->body.storage_type; |
175 | 718k | gi->pos = next->start; |
176 | 718k | gi->end = next->end; |
177 | 718k | gi->start = next->start; |
178 | 718k | gi->repetitions = next->repetitions; |
179 | 718k | gi->strands_remaining--; |
180 | 718k | gi->next_strand++; |
181 | 718k | } |
182 | 0 | else { |
183 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator"); |
184 | 0 | } |
185 | 38.4M | } |
186 | 35.5M | } Unexecuted instantiation: callsite.c:MVM_string_gi_get_grapheme Unexecuted instantiation: asyncsocketudp.c:MVM_string_gi_get_grapheme Unexecuted instantiation: KnowHOWREPR.c:MVM_string_gi_get_grapheme Unexecuted instantiation: MVMCFunction.c:MVM_string_gi_get_grapheme Unexecuted instantiation: MVMHash.c:MVM_string_gi_get_grapheme Unexecuted instantiation: VMArray.c:MVM_string_gi_get_grapheme Unexecuted instantiation: MVMString.c:MVM_string_gi_get_grapheme Unexecuted instantiation: parametric.c:MVM_string_gi_get_grapheme Unexecuted instantiation: containers.c:MVM_string_gi_get_grapheme Unexecuted instantiation: reprconv.c:MVM_string_gi_get_grapheme Unexecuted instantiation: reprs.c:MVM_string_gi_get_grapheme Unexecuted instantiation: KnowHOWAttributeREPR.c:MVM_string_gi_get_grapheme Unexecuted instantiation: asyncsocket.c:MVM_string_gi_get_grapheme Unexecuted instantiation: signals.c:MVM_string_gi_get_grapheme Unexecuted instantiation: filewatchers.c:MVM_string_gi_get_grapheme Unexecuted instantiation: timers.c:MVM_string_gi_get_grapheme Unexecuted instantiation: procops.c:MVM_string_gi_get_grapheme Unexecuted instantiation: dirops.c:MVM_string_gi_get_grapheme Unexecuted instantiation: fileops.c:MVM_string_gi_get_grapheme Unexecuted instantiation: syncsocket.c:MVM_string_gi_get_grapheme Unexecuted instantiation: syncfile.c:MVM_string_gi_get_grapheme Unexecuted instantiation: HashAttrStore.c:MVM_string_gi_get_grapheme Unexecuted instantiation: MVMDLLSym.c:MVM_string_gi_get_grapheme Unexecuted instantiation: MVMException.c:MVM_string_gi_get_grapheme NFA.c:MVM_string_gi_get_grapheme Line | Count | Source | 155 | 2.21M | MVM_STATIC_INLINE MVMGrapheme32 MVM_string_gi_get_grapheme(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 156 | 2.21M | while (1) { | 157 | 2.21M | if (gi->pos < gi->end) { | 158 | 2.21M | switch (gi->blob_type) { | 159 | 2.00M | case MVM_STRING_GRAPHEME_32: | 160 | 2.00M | return gi->active_blob.blob_32[gi->pos++]; | 161 | 0 | case MVM_STRING_GRAPHEME_ASCII: | 162 | 0 | return gi->active_blob.blob_ascii[gi->pos++]; | 163 | 206k | case MVM_STRING_GRAPHEME_8: | 164 | 206k | return gi->active_blob.blob_8[gi->pos++]; | 165 | 2.21M | } | 166 | 2.21M | } | 167 | 0 | else if (gi->repetitions) { | 168 | 0 | gi->pos = gi->start; | 169 | 0 | gi->repetitions--; | 170 | 0 | } | 171 | 0 | else if (gi->strands_remaining) { | 172 | 0 | MVMStringStrand *next = gi->next_strand; | 173 | 0 | gi->active_blob.any = next->blob_string->body.storage.any; | 174 | 0 | gi->blob_type = next->blob_string->body.storage_type; | 175 | 0 | gi->pos = next->start; | 176 | 0 | gi->end = next->end; | 177 | 0 | gi->start = next->start; | 178 | 0 | gi->repetitions = next->repetitions; | 179 | 0 | gi->strands_remaining--; | 180 | 0 | gi->next_strand++; | 181 | 0 | } | 182 | 0 | else { | 183 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator"); | 184 | 0 | } | 185 | 2.21M | } | 186 | 2.21M | } |
Unexecuted instantiation: P6bigint.c:MVM_string_gi_get_grapheme Unexecuted instantiation: MVMCallCapture.c:MVM_string_gi_get_grapheme Unexecuted instantiation: SCRef.c:MVM_string_gi_get_grapheme Unexecuted instantiation: MVMContext.c:MVM_string_gi_get_grapheme Unexecuted instantiation: MVMIter.c:MVM_string_gi_get_grapheme Unexecuted instantiation: MVMThread.c:MVM_string_gi_get_grapheme Unexecuted instantiation: eventloop.c:MVM_string_gi_get_grapheme Unexecuted instantiation: Uninstantiable.c:MVM_string_gi_get_grapheme Unexecuted instantiation: P6num.c:MVM_string_gi_get_grapheme Unexecuted instantiation: P6int.c:MVM_string_gi_get_grapheme Unexecuted instantiation: MVMStaticFrame.c:MVM_string_gi_get_grapheme Unexecuted instantiation: MVMCompUnit.c:MVM_string_gi_get_grapheme Unexecuted instantiation: MVMOSHandle.c:MVM_string_gi_get_grapheme Unexecuted instantiation: MVMCode.c:MVM_string_gi_get_grapheme Unexecuted instantiation: P6opaque.c:MVM_string_gi_get_grapheme Unexecuted instantiation: P6str.c:MVM_string_gi_get_grapheme Unexecuted instantiation: validation.c:MVM_string_gi_get_grapheme Unexecuted instantiation: ext.c:MVM_string_gi_get_grapheme Unexecuted instantiation: dll.c:MVM_string_gi_get_grapheme coerce.c:MVM_string_gi_get_grapheme Line | Count | Source | 155 | 9.48k | MVM_STATIC_INLINE MVMGrapheme32 MVM_string_gi_get_grapheme(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 156 | 9.48k | while (1) { | 157 | 9.48k | if (gi->pos < gi->end) { | 158 | 9.48k | switch (gi->blob_type) { | 159 | 8.92k | case MVM_STRING_GRAPHEME_32: | 160 | 8.92k | return gi->active_blob.blob_32[gi->pos++]; | 161 | 0 | case MVM_STRING_GRAPHEME_ASCII: | 162 | 0 | return gi->active_blob.blob_ascii[gi->pos++]; | 163 | 557 | case MVM_STRING_GRAPHEME_8: | 164 | 557 | return gi->active_blob.blob_8[gi->pos++]; | 165 | 9.48k | } | 166 | 9.48k | } | 167 | 0 | else if (gi->repetitions) { | 168 | 0 | gi->pos = gi->start; | 169 | 0 | gi->repetitions--; | 170 | 0 | } | 171 | 0 | else if (gi->strands_remaining) { | 172 | 0 | MVMStringStrand *next = gi->next_strand; | 173 | 0 | gi->active_blob.any = next->blob_string->body.storage.any; | 174 | 0 | gi->blob_type = next->blob_string->body.storage_type; | 175 | 0 | gi->pos = next->start; | 176 | 0 | gi->end = next->end; | 177 | 0 | gi->start = next->start; | 178 | 0 | gi->repetitions = next->repetitions; | 179 | 0 | gi->strands_remaining--; | 180 | 0 | gi->next_strand++; | 181 | 0 | } | 182 | 0 | else { | 183 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator"); | 184 | 0 | } | 185 | 9.48k | } | 186 | 9.48k | } |
Unexecuted instantiation: num.c:MVM_string_gi_get_grapheme Unexecuted instantiation: loadbytecode.c:MVM_string_gi_get_grapheme Unexecuted instantiation: hll.c:MVM_string_gi_get_grapheme ops.c:MVM_string_gi_get_grapheme Line | Count | Source | 155 | 28.6M | MVM_STATIC_INLINE MVMGrapheme32 MVM_string_gi_get_grapheme(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 156 | 31.2M | while (1) { | 157 | 31.2M | if (gi->pos < gi->end) { | 158 | 28.6M | switch (gi->blob_type) { | 159 | 20.0M | case MVM_STRING_GRAPHEME_32: | 160 | 20.0M | return gi->active_blob.blob_32[gi->pos++]; | 161 | 0 | case MVM_STRING_GRAPHEME_ASCII: | 162 | 0 | return gi->active_blob.blob_ascii[gi->pos++]; | 163 | 8.57M | case MVM_STRING_GRAPHEME_8: | 164 | 8.57M | return gi->active_blob.blob_8[gi->pos++]; | 165 | 28.6M | } | 166 | 28.6M | } | 167 | 2.66M | else if (gi->repetitions) { | 168 | 2.02M | gi->pos = gi->start; | 169 | 2.02M | gi->repetitions--; | 170 | 2.02M | } | 171 | 634k | else if (gi->strands_remaining) { | 172 | 634k | MVMStringStrand *next = gi->next_strand; | 173 | 634k | gi->active_blob.any = next->blob_string->body.storage.any; | 174 | 634k | gi->blob_type = next->blob_string->body.storage_type; | 175 | 634k | gi->pos = next->start; | 176 | 634k | gi->end = next->end; | 177 | 634k | gi->start = next->start; | 178 | 634k | gi->repetitions = next->repetitions; | 179 | 634k | gi->strands_remaining--; | 180 | 634k | gi->next_strand++; | 181 | 634k | } | 182 | 0 | else { | 183 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator"); | 184 | 0 | } | 185 | 31.2M | } | 186 | 28.6M | } |
Unexecuted instantiation: threads.c:MVM_string_gi_get_grapheme Unexecuted instantiation: bytecodedump.c:MVM_string_gi_get_grapheme Unexecuted instantiation: nativecall.c:MVM_string_gi_get_grapheme Unexecuted instantiation: callstack.c:MVM_string_gi_get_grapheme Unexecuted instantiation: frame.c:MVM_string_gi_get_grapheme Unexecuted instantiation: bytecode.c:MVM_string_gi_get_grapheme Unexecuted instantiation: compunit.c:MVM_string_gi_get_grapheme Unexecuted instantiation: threadcontext.c:MVM_string_gi_get_grapheme interp.c:MVM_string_gi_get_grapheme Line | Count | Source | 155 | 9 | MVM_STATIC_INLINE MVMGrapheme32 MVM_string_gi_get_grapheme(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 156 | 10 | while (1) { | 157 | 10 | if (gi->pos < gi->end) { | 158 | 9 | switch (gi->blob_type) { | 159 | 4 | case MVM_STRING_GRAPHEME_32: | 160 | 4 | return gi->active_blob.blob_32[gi->pos++]; | 161 | 0 | case MVM_STRING_GRAPHEME_ASCII: | 162 | 0 | return gi->active_blob.blob_ascii[gi->pos++]; | 163 | 5 | case MVM_STRING_GRAPHEME_8: | 164 | 5 | return gi->active_blob.blob_8[gi->pos++]; | 165 | 9 | } | 166 | 9 | } | 167 | 1 | else if (gi->repetitions) { | 168 | 0 | gi->pos = gi->start; | 169 | 0 | gi->repetitions--; | 170 | 0 | } | 171 | 1 | else if (gi->strands_remaining) { | 172 | 1 | MVMStringStrand *next = gi->next_strand; | 173 | 1 | gi->active_blob.any = next->blob_string->body.storage.any; | 174 | 1 | gi->blob_type = next->blob_string->body.storage_type; | 175 | 1 | gi->pos = next->start; | 176 | 1 | gi->end = next->end; | 177 | 1 | gi->start = next->start; | 178 | 1 | gi->repetitions = next->repetitions; | 179 | 1 | gi->strands_remaining--; | 180 | 1 | gi->next_strand++; | 181 | 1 | } | 182 | 0 | else { | 183 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator"); | 184 | 0 | } | 185 | 10 | } | 186 | 9 | } |
Unexecuted instantiation: exceptions.c:MVM_string_gi_get_grapheme Unexecuted instantiation: args.c:MVM_string_gi_get_grapheme Unexecuted instantiation: arch.c:MVM_string_gi_get_grapheme Unexecuted instantiation: allocation.c:MVM_string_gi_get_grapheme Unexecuted instantiation: io.c:MVM_string_gi_get_grapheme Unexecuted instantiation: debug.c:MVM_string_gi_get_grapheme Unexecuted instantiation: finalize.c:MVM_string_gi_get_grapheme Unexecuted instantiation: objectid.c:MVM_string_gi_get_grapheme Unexecuted instantiation: wb.c:MVM_string_gi_get_grapheme Unexecuted instantiation: gen2.c:MVM_string_gi_get_grapheme Unexecuted instantiation: collect.c:MVM_string_gi_get_grapheme Unexecuted instantiation: roots.c:MVM_string_gi_get_grapheme Unexecuted instantiation: worklist.c:MVM_string_gi_get_grapheme Unexecuted instantiation: emit.c:MVM_string_gi_get_grapheme Unexecuted instantiation: orchestrate.c:MVM_string_gi_get_grapheme Unexecuted instantiation: config.c:MVM_string_gi_get_grapheme Unexecuted instantiation: debugserver.c:MVM_string_gi_get_grapheme Unexecuted instantiation: regionalloc.c:MVM_string_gi_get_grapheme Unexecuted instantiation: fixedsizealloc.c:MVM_string_gi_get_grapheme Unexecuted instantiation: intcache.c:MVM_string_gi_get_grapheme Unexecuted instantiation: continuation.c:MVM_string_gi_get_grapheme Unexecuted instantiation: nativecall_dyncall.c:MVM_string_gi_get_grapheme utf8.c:MVM_string_gi_get_grapheme Line | Count | Source | 155 | 1.35M | MVM_STATIC_INLINE MVMGrapheme32 MVM_string_gi_get_grapheme(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 156 | 1.37M | while (1) { | 157 | 1.37M | if (gi->pos < gi->end) { | 158 | 1.35M | switch (gi->blob_type) { | 159 | 1.31M | case MVM_STRING_GRAPHEME_32: | 160 | 1.31M | return gi->active_blob.blob_32[gi->pos++]; | 161 | 0 | case MVM_STRING_GRAPHEME_ASCII: | 162 | 0 | return gi->active_blob.blob_ascii[gi->pos++]; | 163 | 41.7k | case MVM_STRING_GRAPHEME_8: | 164 | 41.7k | return gi->active_blob.blob_8[gi->pos++]; | 165 | 1.35M | } | 166 | 1.35M | } | 167 | 15.5k | else if (gi->repetitions) { | 168 | 0 | gi->pos = gi->start; | 169 | 0 | gi->repetitions--; | 170 | 0 | } | 171 | 15.5k | else if (gi->strands_remaining) { | 172 | 15.5k | MVMStringStrand *next = gi->next_strand; | 173 | 15.5k | gi->active_blob.any = next->blob_string->body.storage.any; | 174 | 15.5k | gi->blob_type = next->blob_string->body.storage_type; | 175 | 15.5k | gi->pos = next->start; | 176 | 15.5k | gi->end = next->end; | 177 | 15.5k | gi->start = next->start; | 178 | 15.5k | gi->repetitions = next->repetitions; | 179 | 15.5k | gi->strands_remaining--; | 180 | 15.5k | gi->next_strand++; | 181 | 15.5k | } | 182 | 0 | else { | 183 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator"); | 184 | 0 | } | 185 | 1.37M | } | 186 | 1.35M | } |
Unexecuted instantiation: shiftjis_codeindex.c:MVM_string_gi_get_grapheme Unexecuted instantiation: shiftjis.c:MVM_string_gi_get_grapheme windows1252.c:MVM_string_gi_get_grapheme Line | Count | Source | 155 | 74 | MVM_STATIC_INLINE MVMGrapheme32 MVM_string_gi_get_grapheme(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 156 | 79 | while (1) { | 157 | 79 | if (gi->pos < gi->end) { | 158 | 74 | switch (gi->blob_type) { | 159 | 56 | case MVM_STRING_GRAPHEME_32: | 160 | 56 | return gi->active_blob.blob_32[gi->pos++]; | 161 | 0 | case MVM_STRING_GRAPHEME_ASCII: | 162 | 0 | return gi->active_blob.blob_ascii[gi->pos++]; | 163 | 18 | case MVM_STRING_GRAPHEME_8: | 164 | 18 | return gi->active_blob.blob_8[gi->pos++]; | 165 | 74 | } | 166 | 74 | } | 167 | 5 | else if (gi->repetitions) { | 168 | 1 | gi->pos = gi->start; | 169 | 1 | gi->repetitions--; | 170 | 1 | } | 171 | 4 | else if (gi->strands_remaining) { | 172 | 4 | MVMStringStrand *next = gi->next_strand; | 173 | 4 | gi->active_blob.any = next->blob_string->body.storage.any; | 174 | 4 | gi->blob_type = next->blob_string->body.storage_type; | 175 | 4 | gi->pos = next->start; | 176 | 4 | gi->end = next->end; | 177 | 4 | gi->start = next->start; | 178 | 4 | gi->repetitions = next->repetitions; | 179 | 4 | gi->strands_remaining--; | 180 | 4 | gi->next_strand++; | 181 | 4 | } | 182 | 0 | else { | 183 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator"); | 184 | 0 | } | 185 | 79 | } | 186 | 74 | } |
utf16.c:MVM_string_gi_get_grapheme Line | Count | Source | 155 | 1 | MVM_STATIC_INLINE MVMGrapheme32 MVM_string_gi_get_grapheme(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 156 | 1 | while (1) { | 157 | 1 | if (gi->pos < gi->end) { | 158 | 1 | switch (gi->blob_type) { | 159 | 0 | case MVM_STRING_GRAPHEME_32: | 160 | 0 | return gi->active_blob.blob_32[gi->pos++]; | 161 | 0 | case MVM_STRING_GRAPHEME_ASCII: | 162 | 0 | return gi->active_blob.blob_ascii[gi->pos++]; | 163 | 1 | case MVM_STRING_GRAPHEME_8: | 164 | 1 | return gi->active_blob.blob_8[gi->pos++]; | 165 | 1 | } | 166 | 1 | } | 167 | 0 | else if (gi->repetitions) { | 168 | 0 | gi->pos = gi->start; | 169 | 0 | gi->repetitions--; | 170 | 0 | } | 171 | 0 | else if (gi->strands_remaining) { | 172 | 0 | MVMStringStrand *next = gi->next_strand; | 173 | 0 | gi->active_blob.any = next->blob_string->body.storage.any; | 174 | 0 | gi->blob_type = next->blob_string->body.storage_type; | 175 | 0 | gi->pos = next->start; | 176 | 0 | gi->end = next->end; | 177 | 0 | gi->start = next->start; | 178 | 0 | gi->repetitions = next->repetitions; | 179 | 0 | gi->strands_remaining--; | 180 | 0 | gi->next_strand++; | 181 | 0 | } | 182 | 0 | else { | 183 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator"); | 184 | 0 | } | 185 | 1 | } | 186 | 1 | } |
latin1.c:MVM_string_gi_get_grapheme Line | Count | Source | 155 | 378k | MVM_STATIC_INLINE MVMGrapheme32 MVM_string_gi_get_grapheme(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 156 | 382k | while (1) { | 157 | 382k | if (gi->pos < gi->end) { | 158 | 378k | switch (gi->blob_type) { | 159 | 158k | case MVM_STRING_GRAPHEME_32: | 160 | 158k | return gi->active_blob.blob_32[gi->pos++]; | 161 | 0 | case MVM_STRING_GRAPHEME_ASCII: | 162 | 0 | return gi->active_blob.blob_ascii[gi->pos++]; | 163 | 220k | case MVM_STRING_GRAPHEME_8: | 164 | 220k | return gi->active_blob.blob_8[gi->pos++]; | 165 | 378k | } | 166 | 378k | } | 167 | 3.48k | else if (gi->repetitions) { | 168 | 25 | gi->pos = gi->start; | 169 | 25 | gi->repetitions--; | 170 | 25 | } | 171 | 3.45k | else if (gi->strands_remaining) { | 172 | 3.45k | MVMStringStrand *next = gi->next_strand; | 173 | 3.45k | gi->active_blob.any = next->blob_string->body.storage.any; | 174 | 3.45k | gi->blob_type = next->blob_string->body.storage_type; | 175 | 3.45k | gi->pos = next->start; | 176 | 3.45k | gi->end = next->end; | 177 | 3.45k | gi->start = next->start; | 178 | 3.45k | gi->repetitions = next->repetitions; | 179 | 3.45k | gi->strands_remaining--; | 180 | 3.45k | gi->next_strand++; | 181 | 3.45k | } | 182 | 0 | else { | 183 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator"); | 184 | 0 | } | 185 | 382k | } | 186 | 378k | } |
normalize.c:MVM_string_gi_get_grapheme Line | Count | Source | 155 | 3 | MVM_STATIC_INLINE MVMGrapheme32 MVM_string_gi_get_grapheme(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 156 | 3 | while (1) { | 157 | 3 | if (gi->pos < gi->end) { | 158 | 3 | switch (gi->blob_type) { | 159 | 1 | case MVM_STRING_GRAPHEME_32: | 160 | 1 | return gi->active_blob.blob_32[gi->pos++]; | 161 | 0 | case MVM_STRING_GRAPHEME_ASCII: | 162 | 0 | return gi->active_blob.blob_ascii[gi->pos++]; | 163 | 2 | case MVM_STRING_GRAPHEME_8: | 164 | 2 | return gi->active_blob.blob_8[gi->pos++]; | 165 | 3 | } | 166 | 3 | } | 167 | 0 | else if (gi->repetitions) { | 168 | 0 | gi->pos = gi->start; | 169 | 0 | gi->repetitions--; | 170 | 0 | } | 171 | 0 | else if (gi->strands_remaining) { | 172 | 0 | MVMStringStrand *next = gi->next_strand; | 173 | 0 | gi->active_blob.any = next->blob_string->body.storage.any; | 174 | 0 | gi->blob_type = next->blob_string->body.storage_type; | 175 | 0 | gi->pos = next->start; | 176 | 0 | gi->end = next->end; | 177 | 0 | gi->start = next->start; | 178 | 0 | gi->repetitions = next->repetitions; | 179 | 0 | gi->strands_remaining--; | 180 | 0 | gi->next_strand++; | 181 | 0 | } | 182 | 0 | else { | 183 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator"); | 184 | 0 | } | 185 | 3 | } | 186 | 3 | } |
Unexecuted instantiation: unicode.c:MVM_string_gi_get_grapheme nfg.c:MVM_string_gi_get_grapheme Line | Count | Source | 155 | 2.38M | MVM_STATIC_INLINE MVMGrapheme32 MVM_string_gi_get_grapheme(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 156 | 2.62M | while (1) { | 157 | 2.62M | if (gi->pos < gi->end) { | 158 | 2.38M | switch (gi->blob_type) { | 159 | 2.09M | case MVM_STRING_GRAPHEME_32: | 160 | 2.09M | return gi->active_blob.blob_32[gi->pos++]; | 161 | 0 | case MVM_STRING_GRAPHEME_ASCII: | 162 | 0 | return gi->active_blob.blob_ascii[gi->pos++]; | 163 | 293k | case MVM_STRING_GRAPHEME_8: | 164 | 293k | return gi->active_blob.blob_8[gi->pos++]; | 165 | 2.38M | } | 166 | 2.38M | } | 167 | 238k | else if (gi->repetitions) { | 168 | 200k | gi->pos = gi->start; | 169 | 200k | gi->repetitions--; | 170 | 200k | } | 171 | 37.6k | else if (gi->strands_remaining) { | 172 | 37.6k | MVMStringStrand *next = gi->next_strand; | 173 | 37.6k | gi->active_blob.any = next->blob_string->body.storage.any; | 174 | 37.6k | gi->blob_type = next->blob_string->body.storage_type; | 175 | 37.6k | gi->pos = next->start; | 176 | 37.6k | gi->end = next->end; | 177 | 37.6k | gi->start = next->start; | 178 | 37.6k | gi->repetitions = next->repetitions; | 179 | 37.6k | gi->strands_remaining--; | 180 | 37.6k | gi->next_strand++; | 181 | 37.6k | } | 182 | 0 | else { | 183 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator"); | 184 | 0 | } | 185 | 2.62M | } | 186 | 2.38M | } |
utf8_c8.c:MVM_string_gi_get_grapheme Line | Count | Source | 155 | 90.7k | MVM_STATIC_INLINE MVMGrapheme32 MVM_string_gi_get_grapheme(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 156 | 95.1k | while (1) { | 157 | 95.1k | if (gi->pos < gi->end) { | 158 | 90.7k | switch (gi->blob_type) { | 159 | 43.4k | case MVM_STRING_GRAPHEME_32: | 160 | 43.4k | return gi->active_blob.blob_32[gi->pos++]; | 161 | 0 | case MVM_STRING_GRAPHEME_ASCII: | 162 | 0 | return gi->active_blob.blob_ascii[gi->pos++]; | 163 | 47.3k | case MVM_STRING_GRAPHEME_8: | 164 | 47.3k | return gi->active_blob.blob_8[gi->pos++]; | 165 | 90.7k | } | 166 | 90.7k | } | 167 | 4.40k | else if (gi->repetitions) { | 168 | 0 | gi->pos = gi->start; | 169 | 0 | gi->repetitions--; | 170 | 0 | } | 171 | 4.40k | else if (gi->strands_remaining) { | 172 | 4.40k | MVMStringStrand *next = gi->next_strand; | 173 | 4.40k | gi->active_blob.any = next->blob_string->body.storage.any; | 174 | 4.40k | gi->blob_type = next->blob_string->body.storage_type; | 175 | 4.40k | gi->pos = next->start; | 176 | 4.40k | gi->end = next->end; | 177 | 4.40k | gi->start = next->start; | 178 | 4.40k | gi->repetitions = next->repetitions; | 179 | 4.40k | gi->strands_remaining--; | 180 | 4.40k | gi->next_strand++; | 181 | 4.40k | } | 182 | 0 | else { | 183 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator"); | 184 | 0 | } | 185 | 95.1k | } | 186 | 90.7k | } |
bigintops.c:MVM_string_gi_get_grapheme Line | Count | Source | 155 | 1.14k | MVM_STATIC_INLINE MVMGrapheme32 MVM_string_gi_get_grapheme(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 156 | 1.33k | while (1) { | 157 | 1.33k | if (gi->pos < gi->end) { | 158 | 1.14k | switch (gi->blob_type) { | 159 | 104 | case MVM_STRING_GRAPHEME_32: | 160 | 104 | return gi->active_blob.blob_32[gi->pos++]; | 161 | 0 | case MVM_STRING_GRAPHEME_ASCII: | 162 | 0 | return gi->active_blob.blob_ascii[gi->pos++]; | 163 | 1.03k | case MVM_STRING_GRAPHEME_8: | 164 | 1.03k | return gi->active_blob.blob_8[gi->pos++]; | 165 | 1.14k | } | 166 | 1.14k | } | 167 | 192 | else if (gi->repetitions) { | 168 | 0 | gi->pos = gi->start; | 169 | 0 | gi->repetitions--; | 170 | 0 | } | 171 | 192 | else if (gi->strands_remaining) { | 172 | 192 | MVMStringStrand *next = gi->next_strand; | 173 | 192 | gi->active_blob.any = next->blob_string->body.storage.any; | 174 | 192 | gi->blob_type = next->blob_string->body.storage_type; | 175 | 192 | gi->pos = next->start; | 176 | 192 | gi->end = next->end; | 177 | 192 | gi->start = next->start; | 178 | 192 | gi->repetitions = next->repetitions; | 179 | 192 | gi->strands_remaining--; | 180 | 192 | gi->next_strand++; | 181 | 192 | } | 182 | 0 | else { | 183 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator"); | 184 | 0 | } | 185 | 1.33k | } | 186 | 1.14k | } |
parse_num.c:MVM_string_gi_get_grapheme Line | Count | Source | 155 | 56.4k | MVM_STATIC_INLINE MVMGrapheme32 MVM_string_gi_get_grapheme(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 156 | 77.0k | while (1) { | 157 | 77.0k | if (gi->pos < gi->end) { | 158 | 56.4k | switch (gi->blob_type) { | 159 | 50.1k | case MVM_STRING_GRAPHEME_32: | 160 | 50.1k | return gi->active_blob.blob_32[gi->pos++]; | 161 | 0 | case MVM_STRING_GRAPHEME_ASCII: | 162 | 0 | return gi->active_blob.blob_ascii[gi->pos++]; | 163 | 6.28k | case MVM_STRING_GRAPHEME_8: | 164 | 6.28k | return gi->active_blob.blob_8[gi->pos++]; | 165 | 56.4k | } | 166 | 56.4k | } | 167 | 20.5k | else if (gi->repetitions) { | 168 | 1.06k | gi->pos = gi->start; | 169 | 1.06k | gi->repetitions--; | 170 | 1.06k | } | 171 | 19.5k | else if (gi->strands_remaining) { | 172 | 19.5k | MVMStringStrand *next = gi->next_strand; | 173 | 19.5k | gi->active_blob.any = next->blob_string->body.storage.any; | 174 | 19.5k | gi->blob_type = next->blob_string->body.storage_type; | 175 | 19.5k | gi->pos = next->start; | 176 | 19.5k | gi->end = next->end; | 177 | 19.5k | gi->start = next->start; | 178 | 19.5k | gi->repetitions = next->repetitions; | 179 | 19.5k | gi->strands_remaining--; | 180 | 19.5k | gi->next_strand++; | 181 | 19.5k | } | 182 | 0 | else { | 183 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator"); | 184 | 0 | } | 185 | 77.0k | } | 186 | 56.4k | } |
ascii.c:MVM_string_gi_get_grapheme Line | Count | Source | 155 | 31.6k | MVM_STATIC_INLINE MVMGrapheme32 MVM_string_gi_get_grapheme(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 156 | 31.6k | while (1) { | 157 | 31.6k | if (gi->pos < gi->end) { | 158 | 31.6k | switch (gi->blob_type) { | 159 | 29.8k | case MVM_STRING_GRAPHEME_32: | 160 | 29.8k | return gi->active_blob.blob_32[gi->pos++]; | 161 | 0 | case MVM_STRING_GRAPHEME_ASCII: | 162 | 0 | return gi->active_blob.blob_ascii[gi->pos++]; | 163 | 1.85k | case MVM_STRING_GRAPHEME_8: | 164 | 1.85k | return gi->active_blob.blob_8[gi->pos++]; | 165 | 31.6k | } | 166 | 31.6k | } | 167 | 0 | else if (gi->repetitions) { | 168 | 0 | gi->pos = gi->start; | 169 | 0 | gi->repetitions--; | 170 | 0 | } | 171 | 0 | else if (gi->strands_remaining) { | 172 | 0 | MVMStringStrand *next = gi->next_strand; | 173 | 0 | gi->active_blob.any = next->blob_string->body.storage.any; | 174 | 0 | gi->blob_type = next->blob_string->body.storage_type; | 175 | 0 | gi->pos = next->start; | 176 | 0 | gi->end = next->end; | 177 | 0 | gi->start = next->start; | 178 | 0 | gi->repetitions = next->repetitions; | 179 | 0 | gi->strands_remaining--; | 180 | 0 | gi->next_strand++; | 181 | 0 | } | 182 | 0 | else { | 183 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator"); | 184 | 0 | } | 185 | 31.6k | } | 186 | 31.6k | } |
decode_stream.c:MVM_string_gi_get_grapheme Line | Count | Source | 155 | 1.31k | MVM_STATIC_INLINE MVMGrapheme32 MVM_string_gi_get_grapheme(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 156 | 1.31k | while (1) { | 157 | 1.31k | if (gi->pos < gi->end) { | 158 | 1.31k | switch (gi->blob_type) { | 159 | 0 | case MVM_STRING_GRAPHEME_32: | 160 | 0 | return gi->active_blob.blob_32[gi->pos++]; | 161 | 0 | case MVM_STRING_GRAPHEME_ASCII: | 162 | 0 | return gi->active_blob.blob_ascii[gi->pos++]; | 163 | 1.31k | case MVM_STRING_GRAPHEME_8: | 164 | 1.31k | return gi->active_blob.blob_8[gi->pos++]; | 165 | 1.31k | } | 166 | 1.31k | } | 167 | 0 | else if (gi->repetitions) { | 168 | 0 | gi->pos = gi->start; | 169 | 0 | gi->repetitions--; | 170 | 0 | } | 171 | 0 | else if (gi->strands_remaining) { | 172 | 0 | MVMStringStrand *next = gi->next_strand; | 173 | 0 | gi->active_blob.any = next->blob_string->body.storage.any; | 174 | 0 | gi->blob_type = next->blob_string->body.storage_type; | 175 | 0 | gi->pos = next->start; | 176 | 0 | gi->end = next->end; | 177 | 0 | gi->start = next->start; | 178 | 0 | gi->repetitions = next->repetitions; | 179 | 0 | gi->strands_remaining--; | 180 | 0 | gi->next_strand++; | 181 | 0 | } | 182 | 0 | else { | 183 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator"); | 184 | 0 | } | 185 | 1.31k | } | 186 | 1.31k | } |
Unexecuted instantiation: plugin.c:MVM_string_gi_get_grapheme Unexecuted instantiation: arg_guard.c:MVM_string_gi_get_grapheme Unexecuted instantiation: plan.c:MVM_string_gi_get_grapheme Unexecuted instantiation: stats.c:MVM_string_gi_get_grapheme Unexecuted instantiation: worker.c:MVM_string_gi_get_grapheme Unexecuted instantiation: iterator.c:MVM_string_gi_get_grapheme Unexecuted instantiation: moar.c:MVM_string_gi_get_grapheme Unexecuted instantiation: MVMMultiCache.c:MVM_string_gi_get_grapheme Unexecuted instantiation: interface.c:MVM_string_gi_get_grapheme Unexecuted instantiation: linear_scan.c:MVM_string_gi_get_grapheme Unexecuted instantiation: tile.c:MVM_string_gi_get_grapheme Unexecuted instantiation: expr.c:MVM_string_gi_get_grapheme Unexecuted instantiation: compile.c:MVM_string_gi_get_grapheme Unexecuted instantiation: label.c:MVM_string_gi_get_grapheme Unexecuted instantiation: time.c:MVM_string_gi_get_grapheme Unexecuted instantiation: mmap.c:MVM_string_gi_get_grapheme Unexecuted instantiation: MVMContinuation.c:MVM_string_gi_get_grapheme Unexecuted instantiation: memmem32.c:MVM_string_gi_get_grapheme Unexecuted instantiation: random.c:MVM_string_gi_get_grapheme Unexecuted instantiation: sys.c:MVM_string_gi_get_grapheme Unexecuted instantiation: line_coverage.c:MVM_string_gi_get_grapheme Unexecuted instantiation: crossthreadwrite.c:MVM_string_gi_get_grapheme Unexecuted instantiation: telemeh.c:MVM_string_gi_get_grapheme Unexecuted instantiation: heapsnapshot.c:MVM_string_gi_get_grapheme Unexecuted instantiation: profile.c:MVM_string_gi_get_grapheme Unexecuted instantiation: instrument.c:MVM_string_gi_get_grapheme Unexecuted instantiation: Semaphore.c:MVM_string_gi_get_grapheme Unexecuted instantiation: MVMStaticFrameSpesh.c:MVM_string_gi_get_grapheme Unexecuted instantiation: MVMSpeshLog.c:MVM_string_gi_get_grapheme Unexecuted instantiation: Decoder.c:MVM_string_gi_get_grapheme Unexecuted instantiation: MultiDimArray.c:MVM_string_gi_get_grapheme Unexecuted instantiation: NativeRef.c:MVM_string_gi_get_grapheme Unexecuted instantiation: CPPStruct.c:MVM_string_gi_get_grapheme Unexecuted instantiation: MVMNull.c:MVM_string_gi_get_grapheme Unexecuted instantiation: MVMAsyncTask.c:MVM_string_gi_get_grapheme Unexecuted instantiation: ConcBlockingQueue.c:MVM_string_gi_get_grapheme Unexecuted instantiation: osr.c:MVM_string_gi_get_grapheme Unexecuted instantiation: ConditionVariable.c:MVM_string_gi_get_grapheme Unexecuted instantiation: ReentrantMutex.c:MVM_string_gi_get_grapheme Unexecuted instantiation: CUnion.c:MVM_string_gi_get_grapheme Unexecuted instantiation: CStruct.c:MVM_string_gi_get_grapheme Unexecuted instantiation: CArray.c:MVM_string_gi_get_grapheme Unexecuted instantiation: CStr.c:MVM_string_gi_get_grapheme Unexecuted instantiation: CPointer.c:MVM_string_gi_get_grapheme Unexecuted instantiation: NativeCall.c:MVM_string_gi_get_grapheme Unexecuted instantiation: lookup.c:MVM_string_gi_get_grapheme Unexecuted instantiation: bootstrap.c:MVM_string_gi_get_grapheme Unexecuted instantiation: 6model.c:MVM_string_gi_get_grapheme Unexecuted instantiation: inline.c:MVM_string_gi_get_grapheme Unexecuted instantiation: threshold.c:MVM_string_gi_get_grapheme Unexecuted instantiation: log.c:MVM_string_gi_get_grapheme Unexecuted instantiation: deopt.c:MVM_string_gi_get_grapheme Unexecuted instantiation: dead_bb_elimination.c:MVM_string_gi_get_grapheme Unexecuted instantiation: optimize.c:MVM_string_gi_get_grapheme Unexecuted instantiation: facts.c:MVM_string_gi_get_grapheme Unexecuted instantiation: manipulate.c:MVM_string_gi_get_grapheme Unexecuted instantiation: codegen.c:MVM_string_gi_get_grapheme Unexecuted instantiation: graph.c:MVM_string_gi_get_grapheme Unexecuted instantiation: dump.c:MVM_string_gi_get_grapheme Unexecuted instantiation: driver.c:MVM_string_gi_get_grapheme compiler.c:MVM_string_gi_get_grapheme Line | Count | Source | 155 | 379k | MVM_STATIC_INLINE MVMGrapheme32 MVM_string_gi_get_grapheme(MVMThreadContext *tc, MVMGraphemeIter *gi) { | 156 | 382k | while (1) { | 157 | 382k | if (gi->pos < gi->end) { | 158 | 379k | switch (gi->blob_type) { | 159 | 158k | case MVM_STRING_GRAPHEME_32: | 160 | 158k | return gi->active_blob.blob_32[gi->pos++]; | 161 | 0 | case MVM_STRING_GRAPHEME_ASCII: | 162 | 0 | return gi->active_blob.blob_ascii[gi->pos++]; | 163 | 220k | case MVM_STRING_GRAPHEME_8: | 164 | 220k | return gi->active_blob.blob_8[gi->pos++]; | 165 | 379k | } | 166 | 379k | } | 167 | 3.51k | else if (gi->repetitions) { | 168 | 25 | gi->pos = gi->start; | 169 | 25 | gi->repetitions--; | 170 | 25 | } | 171 | 3.48k | else if (gi->strands_remaining) { | 172 | 3.48k | MVMStringStrand *next = gi->next_strand; | 173 | 3.48k | gi->active_blob.any = next->blob_string->body.storage.any; | 174 | 3.48k | gi->blob_type = next->blob_string->body.storage_type; | 175 | 3.48k | gi->pos = next->start; | 176 | 3.48k | gi->end = next->end; | 177 | 3.48k | gi->start = next->start; | 178 | 3.48k | gi->repetitions = next->repetitions; | 179 | 3.48k | gi->strands_remaining--; | 180 | 3.48k | gi->next_strand++; | 181 | 3.48k | } | 182 | 0 | else { | 183 | 0 | MVM_exception_throw_adhoc(tc, "Iteration past end of grapheme iterator"); | 184 | 0 | } | 185 | 382k | } | 186 | 379k | } |
Unexecuted instantiation: serialization.c:MVM_string_gi_get_grapheme Unexecuted instantiation: sc.c:MVM_string_gi_get_grapheme Unexecuted instantiation: candidate.c:MVM_string_gi_get_grapheme |
187 | | |
188 | | |
189 | | /* Returns the codepoint without doing checks, for internal VM use only. */ |
190 | 11.6M | MVM_STATIC_INLINE MVMGrapheme32 MVM_string_get_grapheme_at_nocheck(MVMThreadContext *tc, MVMString *a, MVMint64 index) { |
191 | 11.6M | switch (a->body.storage_type) { |
192 | 5.61M | case MVM_STRING_GRAPHEME_32: |
193 | 5.61M | return a->body.storage.blob_32[index]; |
194 | 0 | case MVM_STRING_GRAPHEME_ASCII: |
195 | 0 | return a->body.storage.blob_ascii[index]; |
196 | 3.56M | case MVM_STRING_GRAPHEME_8: |
197 | 3.56M | return a->body.storage.blob_8[index]; |
198 | 2.47M | case MVM_STRING_STRAND: { |
199 | 2.47M | MVMGraphemeIter gi; |
200 | 2.47M | MVM_string_gi_init(tc, &gi, a); |
201 | 2.47M | MVM_string_gi_move_to(tc, &gi, index); |
202 | 2.47M | return MVM_string_gi_get_grapheme(tc, &gi); |
203 | 5.61M | } |
204 | 0 | default: |
205 | 0 | MVM_exception_throw_adhoc(tc, "String corruption detected: bad storage type"); |
206 | 11.6M | } |
207 | 11.6M | } Unexecuted instantiation: manipulate.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: candidate.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: codegen.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: graph.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: dump.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: driver.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: compiler.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: serialization.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: sc.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: facts.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: optimize.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: dead_bb_elimination.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: deopt.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: log.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: threshold.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: inline.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: osr.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: lookup.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: iterator.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: ConcBlockingQueue.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: NativeCall.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: CPointer.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: CStr.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: CArray.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: CStruct.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: CUnion.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: ReentrantMutex.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: ConditionVariable.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: Semaphore.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: bootstrap.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: MVMAsyncTask.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: MVMNull.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: CPPStruct.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: NativeRef.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: MultiDimArray.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: Decoder.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: MVMSpeshLog.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: MVMStaticFrameSpesh.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: 6model.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: time.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: heapsnapshot.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: telemeh.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: crossthreadwrite.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: line_coverage.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: sys.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: random.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: memmem32.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: moar.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: mmap.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: profile.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: label.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: compile.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: expr.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: tile.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: linear_scan.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: interface.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: emit.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: arch.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: callsite.c:MVM_string_get_grapheme_at_nocheck nfg.c:MVM_string_get_grapheme_at_nocheck Line | Count | Source | 190 | 2.82M | MVM_STATIC_INLINE MVMGrapheme32 MVM_string_get_grapheme_at_nocheck(MVMThreadContext *tc, MVMString *a, MVMint64 index) { | 191 | 2.82M | switch (a->body.storage_type) { | 192 | 61.0k | case MVM_STRING_GRAPHEME_32: | 193 | 61.0k | return a->body.storage.blob_32[index]; | 194 | 0 | case MVM_STRING_GRAPHEME_ASCII: | 195 | 0 | return a->body.storage.blob_ascii[index]; | 196 | 378k | case MVM_STRING_GRAPHEME_8: | 197 | 378k | return a->body.storage.blob_8[index]; | 198 | 2.38M | case MVM_STRING_STRAND: { | 199 | 2.38M | MVMGraphemeIter gi; | 200 | 2.38M | MVM_string_gi_init(tc, &gi, a); | 201 | 2.38M | MVM_string_gi_move_to(tc, &gi, index); | 202 | 2.38M | return MVM_string_gi_get_grapheme(tc, &gi); | 203 | 61.0k | } | 204 | 0 | default: | 205 | 0 | MVM_exception_throw_adhoc(tc, "String corruption detected: bad storage type"); | 206 | 2.82M | } | 207 | 2.82M | } |
Unexecuted instantiation: stats.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: plan.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: arg_guard.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: plugin.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: decode_stream.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: ascii.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: parse_num.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: utf8.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: utf8_c8.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: worker.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: unicode.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: normalize.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: latin1.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: utf16.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: windows1252.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: shiftjis.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: shiftjis_codeindex.c:MVM_string_get_grapheme_at_nocheck bigintops.c:MVM_string_get_grapheme_at_nocheck Line | Count | Source | 190 | 163 | MVM_STATIC_INLINE MVMGrapheme32 MVM_string_get_grapheme_at_nocheck(MVMThreadContext *tc, MVMString *a, MVMint64 index) { | 191 | 163 | switch (a->body.storage_type) { | 192 | 13 | case MVM_STRING_GRAPHEME_32: | 193 | 13 | return a->body.storage.blob_32[index]; | 194 | 0 | case MVM_STRING_GRAPHEME_ASCII: | 195 | 0 | return a->body.storage.blob_ascii[index]; | 196 | 150 | case MVM_STRING_GRAPHEME_8: | 197 | 150 | return a->body.storage.blob_8[index]; | 198 | 0 | case MVM_STRING_STRAND: { | 199 | 0 | MVMGraphemeIter gi; | 200 | 0 | MVM_string_gi_init(tc, &gi, a); | 201 | 0 | MVM_string_gi_move_to(tc, &gi, index); | 202 | 0 | return MVM_string_gi_get_grapheme(tc, &gi); | 203 | 13 | } | 204 | 0 | default: | 205 | 0 | MVM_exception_throw_adhoc(tc, "String corruption detected: bad storage type"); | 206 | 163 | } | 207 | 163 | } |
Unexecuted instantiation: instrument.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: roots.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: continuation.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: intcache.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: fixedsizealloc.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: regionalloc.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: debugserver.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: config.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: orchestrate.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: allocation.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: worklist.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: nativecall_dyncall.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: collect.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: gen2.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: wb.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: objectid.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: finalize.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: debug.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: io.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: eventloop.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: syncfile.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: bytecodedump.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: args.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: exceptions.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: interp.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: threadcontext.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: compunit.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: bytecode.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: frame.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: callstack.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: validation.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: syncsocket.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: threads.c:MVM_string_get_grapheme_at_nocheck ops.c:MVM_string_get_grapheme_at_nocheck Line | Count | Source | 190 | 8.81M | MVM_STATIC_INLINE MVMGrapheme32 MVM_string_get_grapheme_at_nocheck(MVMThreadContext *tc, MVMString *a, MVMint64 index) { | 191 | 8.81M | switch (a->body.storage_type) { | 192 | 5.55M | case MVM_STRING_GRAPHEME_32: | 193 | 5.55M | return a->body.storage.blob_32[index]; | 194 | 0 | case MVM_STRING_GRAPHEME_ASCII: | 195 | 0 | return a->body.storage.blob_ascii[index]; | 196 | 3.18M | case MVM_STRING_GRAPHEME_8: | 197 | 3.18M | return a->body.storage.blob_8[index]; | 198 | 77.1k | case MVM_STRING_STRAND: { | 199 | 77.1k | MVMGraphemeIter gi; | 200 | 77.1k | MVM_string_gi_init(tc, &gi, a); | 201 | 77.1k | MVM_string_gi_move_to(tc, &gi, index); | 202 | 77.1k | return MVM_string_gi_get_grapheme(tc, &gi); | 203 | 5.55M | } | 204 | 0 | default: | 205 | 0 | MVM_exception_throw_adhoc(tc, "String corruption detected: bad storage type"); | 206 | 8.81M | } | 207 | 8.81M | } |
Unexecuted instantiation: hll.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: loadbytecode.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: num.c:MVM_string_get_grapheme_at_nocheck coerce.c:MVM_string_get_grapheme_at_nocheck Line | Count | Source | 190 | 9.77k | MVM_STATIC_INLINE MVMGrapheme32 MVM_string_get_grapheme_at_nocheck(MVMThreadContext *tc, MVMString *a, MVMint64 index) { | 191 | 9.77k | switch (a->body.storage_type) { | 192 | 186 | case MVM_STRING_GRAPHEME_32: | 193 | 186 | return a->body.storage.blob_32[index]; | 194 | 0 | case MVM_STRING_GRAPHEME_ASCII: | 195 | 0 | return a->body.storage.blob_ascii[index]; | 196 | 99 | case MVM_STRING_GRAPHEME_8: | 197 | 99 | return a->body.storage.blob_8[index]; | 198 | 9.48k | case MVM_STRING_STRAND: { | 199 | 9.48k | MVMGraphemeIter gi; | 200 | 9.48k | MVM_string_gi_init(tc, &gi, a); | 201 | 9.48k | MVM_string_gi_move_to(tc, &gi, index); | 202 | 9.48k | return MVM_string_gi_get_grapheme(tc, &gi); | 203 | 186 | } | 204 | 0 | default: | 205 | 0 | MVM_exception_throw_adhoc(tc, "String corruption detected: bad storage type"); | 206 | 9.77k | } | 207 | 9.77k | } |
Unexecuted instantiation: dll.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: ext.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: nativecall.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: MVMThread.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: P6opaque.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: MVMCode.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: MVMOSHandle.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: MVMCompUnit.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: MVMStaticFrame.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: P6int.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: P6num.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: Uninstantiable.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: HashAttrStore.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: P6str.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: MVMIter.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: MVMContext.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: SCRef.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: MVMCallCapture.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: P6bigint.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: NFA.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: MVMException.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: MVMDLLSym.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: MVMMultiCache.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: reprconv.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: fileops.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: dirops.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: procops.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: timers.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: filewatchers.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: signals.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: asyncsocket.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: asyncsocketudp.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: reprs.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: MVMContinuation.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: containers.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: parametric.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: MVMString.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: VMArray.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: MVMHash.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: MVMCFunction.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: KnowHOWREPR.c:MVM_string_get_grapheme_at_nocheck Unexecuted instantiation: KnowHOWAttributeREPR.c:MVM_string_get_grapheme_at_nocheck |
208 | | |
209 | | /* Code point iterator. Uses the grapheme iterator, and adds some extra bits |
210 | | * in order to iterate the code points in synthetics. */ |
211 | | struct MVMCodepointIter { |
212 | | /* The grapheme iterator. */ |
213 | | MVMGraphemeIter gi; |
214 | | |
215 | | /* The codes of the current synthetic we're walking through, if any, with |
216 | | * the number of combiners we returned so far, and the total number of |
217 | | * combiners there are. */ |
218 | | MVMCodepoint *synth_codes; |
219 | | MVMint32 visited_synth_codes; |
220 | | MVMint32 total_synth_codes; |
221 | | /* first_code is only used for string_grapheme_ci functions */ |
222 | | MVMCodepoint first_code; |
223 | | /* If we should translate newline \n into \r\n. */ |
224 | | MVMint32 translate_newlines; |
225 | | /* Used to pass through utf8-c8 synthetics, but not any others so we can |
226 | | * renomalize text without getting rid of utf8-c8 synthetics */ |
227 | | MVMint32 pass_utfc8_synthetics; |
228 | | |
229 | | }; |
230 | | |
231 | | /* Initializes a code point iterator. */ |
232 | | MVM_STATIC_INLINE void MVM_string_ci_init(MVMThreadContext *tc, MVMCodepointIter *ci, MVMString *s, |
233 | 57.9k | MVMint32 translate_newlines, MVMint32 pass_utfc8_synthetics) { |
234 | 57.9k | /* Initialize our underlying grapheme iterator. */ |
235 | 57.9k | MVM_string_gi_init(tc, &(ci->gi), s); |
236 | 57.9k | |
237 | 57.9k | /* We've no currently active synthetic codepoint (and other fields are |
238 | 57.9k | * unused until we do, so leave them alone for now). */ |
239 | 57.9k | ci->synth_codes = NULL; |
240 | 57.9k | ci->translate_newlines = translate_newlines; |
241 | 57.9k | ci->pass_utfc8_synthetics = pass_utfc8_synthetics; |
242 | 57.9k | }; Unexecuted instantiation: facts.c:MVM_string_ci_init Unexecuted instantiation: sc.c:MVM_string_ci_init Unexecuted instantiation: serialization.c:MVM_string_ci_init Unexecuted instantiation: compiler.c:MVM_string_ci_init Unexecuted instantiation: driver.c:MVM_string_ci_init Unexecuted instantiation: dump.c:MVM_string_ci_init Unexecuted instantiation: graph.c:MVM_string_ci_init Unexecuted instantiation: codegen.c:MVM_string_ci_init Unexecuted instantiation: candidate.c:MVM_string_ci_init Unexecuted instantiation: manipulate.c:MVM_string_ci_init Unexecuted instantiation: bootstrap.c:MVM_string_ci_init Unexecuted instantiation: optimize.c:MVM_string_ci_init Unexecuted instantiation: dead_bb_elimination.c:MVM_string_ci_init Unexecuted instantiation: deopt.c:MVM_string_ci_init Unexecuted instantiation: log.c:MVM_string_ci_init Unexecuted instantiation: threshold.c:MVM_string_ci_init Unexecuted instantiation: inline.c:MVM_string_ci_init Unexecuted instantiation: osr.c:MVM_string_ci_init Unexecuted instantiation: lookup.c:MVM_string_ci_init Unexecuted instantiation: iterator.c:MVM_string_ci_init Unexecuted instantiation: ConcBlockingQueue.c:MVM_string_ci_init Unexecuted instantiation: NativeCall.c:MVM_string_ci_init Unexecuted instantiation: CPointer.c:MVM_string_ci_init Unexecuted instantiation: CStr.c:MVM_string_ci_init Unexecuted instantiation: CArray.c:MVM_string_ci_init Unexecuted instantiation: CStruct.c:MVM_string_ci_init Unexecuted instantiation: CUnion.c:MVM_string_ci_init Unexecuted instantiation: ReentrantMutex.c:MVM_string_ci_init Unexecuted instantiation: ConditionVariable.c:MVM_string_ci_init Unexecuted instantiation: Semaphore.c:MVM_string_ci_init Unexecuted instantiation: worker.c:MVM_string_ci_init Unexecuted instantiation: MVMAsyncTask.c:MVM_string_ci_init Unexecuted instantiation: MVMNull.c:MVM_string_ci_init Unexecuted instantiation: CPPStruct.c:MVM_string_ci_init Unexecuted instantiation: NativeRef.c:MVM_string_ci_init Unexecuted instantiation: MultiDimArray.c:MVM_string_ci_init Unexecuted instantiation: Decoder.c:MVM_string_ci_init Unexecuted instantiation: MVMSpeshLog.c:MVM_string_ci_init Unexecuted instantiation: MVMStaticFrameSpesh.c:MVM_string_ci_init Unexecuted instantiation: 6model.c:MVM_string_ci_init Unexecuted instantiation: mmap.c:MVM_string_ci_init Unexecuted instantiation: profile.c:MVM_string_ci_init Unexecuted instantiation: heapsnapshot.c:MVM_string_ci_init Unexecuted instantiation: telemeh.c:MVM_string_ci_init Unexecuted instantiation: crossthreadwrite.c:MVM_string_ci_init Unexecuted instantiation: line_coverage.c:MVM_string_ci_init Unexecuted instantiation: sys.c:MVM_string_ci_init Unexecuted instantiation: random.c:MVM_string_ci_init Unexecuted instantiation: memmem32.c:MVM_string_ci_init Unexecuted instantiation: moar.c:MVM_string_ci_init Unexecuted instantiation: instrument.c:MVM_string_ci_init Unexecuted instantiation: time.c:MVM_string_ci_init Unexecuted instantiation: label.c:MVM_string_ci_init Unexecuted instantiation: compile.c:MVM_string_ci_init Unexecuted instantiation: expr.c:MVM_string_ci_init Unexecuted instantiation: tile.c:MVM_string_ci_init Unexecuted instantiation: linear_scan.c:MVM_string_ci_init Unexecuted instantiation: interface.c:MVM_string_ci_init Unexecuted instantiation: emit.c:MVM_string_ci_init Unexecuted instantiation: arch.c:MVM_string_ci_init Unexecuted instantiation: nfg.c:MVM_string_ci_init Unexecuted instantiation: stats.c:MVM_string_ci_init Unexecuted instantiation: plan.c:MVM_string_ci_init Unexecuted instantiation: arg_guard.c:MVM_string_ci_init Unexecuted instantiation: plugin.c:MVM_string_ci_init Unexecuted instantiation: decode_stream.c:MVM_string_ci_init ascii.c:MVM_string_ci_init Line | Count | Source | 233 | 1.96k | MVMint32 translate_newlines, MVMint32 pass_utfc8_synthetics) { | 234 | 1.96k | /* Initialize our underlying grapheme iterator. */ | 235 | 1.96k | MVM_string_gi_init(tc, &(ci->gi), s); | 236 | 1.96k | | 237 | 1.96k | /* We've no currently active synthetic codepoint (and other fields are | 238 | 1.96k | * unused until we do, so leave them alone for now). */ | 239 | 1.96k | ci->synth_codes = NULL; | 240 | 1.96k | ci->translate_newlines = translate_newlines; | 241 | 1.96k | ci->pass_utfc8_synthetics = pass_utfc8_synthetics; | 242 | 1.96k | }; |
parse_num.c:MVM_string_ci_init Line | Count | Source | 233 | 5.91k | MVMint32 translate_newlines, MVMint32 pass_utfc8_synthetics) { | 234 | 5.91k | /* Initialize our underlying grapheme iterator. */ | 235 | 5.91k | MVM_string_gi_init(tc, &(ci->gi), s); | 236 | 5.91k | | 237 | 5.91k | /* We've no currently active synthetic codepoint (and other fields are | 238 | 5.91k | * unused until we do, so leave them alone for now). */ | 239 | 5.91k | ci->synth_codes = NULL; | 240 | 5.91k | ci->translate_newlines = translate_newlines; | 241 | 5.91k | ci->pass_utfc8_synthetics = pass_utfc8_synthetics; | 242 | 5.91k | }; |
utf8.c:MVM_string_ci_init Line | Count | Source | 233 | 16.0k | MVMint32 translate_newlines, MVMint32 pass_utfc8_synthetics) { | 234 | 16.0k | /* Initialize our underlying grapheme iterator. */ | 235 | 16.0k | MVM_string_gi_init(tc, &(ci->gi), s); | 236 | 16.0k | | 237 | 16.0k | /* We've no currently active synthetic codepoint (and other fields are | 238 | 16.0k | * unused until we do, so leave them alone for now). */ | 239 | 16.0k | ci->synth_codes = NULL; | 240 | 16.0k | ci->translate_newlines = translate_newlines; | 241 | 16.0k | ci->pass_utfc8_synthetics = pass_utfc8_synthetics; | 242 | 16.0k | }; |
Unexecuted instantiation: utf8_c8.c:MVM_string_ci_init Unexecuted instantiation: MVMContinuation.c:MVM_string_ci_init Unexecuted instantiation: unicode.c:MVM_string_ci_init normalize.c:MVM_string_ci_init Line | Count | Source | 233 | 2 | MVMint32 translate_newlines, MVMint32 pass_utfc8_synthetics) { | 234 | 2 | /* Initialize our underlying grapheme iterator. */ | 235 | 2 | MVM_string_gi_init(tc, &(ci->gi), s); | 236 | 2 | | 237 | 2 | /* We've no currently active synthetic codepoint (and other fields are | 238 | 2 | * unused until we do, so leave them alone for now). */ | 239 | 2 | ci->synth_codes = NULL; | 240 | 2 | ci->translate_newlines = translate_newlines; | 241 | 2 | ci->pass_utfc8_synthetics = pass_utfc8_synthetics; | 242 | 2 | }; |
latin1.c:MVM_string_ci_init Line | Count | Source | 233 | 33.9k | MVMint32 translate_newlines, MVMint32 pass_utfc8_synthetics) { | 234 | 33.9k | /* Initialize our underlying grapheme iterator. */ | 235 | 33.9k | MVM_string_gi_init(tc, &(ci->gi), s); | 236 | 33.9k | | 237 | 33.9k | /* We've no currently active synthetic codepoint (and other fields are | 238 | 33.9k | * unused until we do, so leave them alone for now). */ | 239 | 33.9k | ci->synth_codes = NULL; | 240 | 33.9k | ci->translate_newlines = translate_newlines; | 241 | 33.9k | ci->pass_utfc8_synthetics = pass_utfc8_synthetics; | 242 | 33.9k | }; |
utf16.c:MVM_string_ci_init Line | Count | Source | 233 | 1 | MVMint32 translate_newlines, MVMint32 pass_utfc8_synthetics) { | 234 | 1 | /* Initialize our underlying grapheme iterator. */ | 235 | 1 | MVM_string_gi_init(tc, &(ci->gi), s); | 236 | 1 | | 237 | 1 | /* We've no currently active synthetic codepoint (and other fields are | 238 | 1 | * unused until we do, so leave them alone for now). */ | 239 | 1 | ci->synth_codes = NULL; | 240 | 1 | ci->translate_newlines = translate_newlines; | 241 | 1 | ci->pass_utfc8_synthetics = pass_utfc8_synthetics; | 242 | 1 | }; |
windows1252.c:MVM_string_ci_init Line | Count | Source | 233 | 13 | MVMint32 translate_newlines, MVMint32 pass_utfc8_synthetics) { | 234 | 13 | /* Initialize our underlying grapheme iterator. */ | 235 | 13 | MVM_string_gi_init(tc, &(ci->gi), s); | 236 | 13 | | 237 | 13 | /* We've no currently active synthetic codepoint (and other fields are | 238 | 13 | * unused until we do, so leave them alone for now). */ | 239 | 13 | ci->synth_codes = NULL; | 240 | 13 | ci->translate_newlines = translate_newlines; | 241 | 13 | ci->pass_utfc8_synthetics = pass_utfc8_synthetics; | 242 | 13 | }; |
Unexecuted instantiation: shiftjis.c:MVM_string_ci_init Unexecuted instantiation: shiftjis_codeindex.c:MVM_string_ci_init Unexecuted instantiation: bigintops.c:MVM_string_ci_init Unexecuted instantiation: roots.c:MVM_string_ci_init Unexecuted instantiation: continuation.c:MVM_string_ci_init Unexecuted instantiation: intcache.c:MVM_string_ci_init Unexecuted instantiation: fixedsizealloc.c:MVM_string_ci_init Unexecuted instantiation: regionalloc.c:MVM_string_ci_init Unexecuted instantiation: debugserver.c:MVM_string_ci_init Unexecuted instantiation: config.c:MVM_string_ci_init Unexecuted instantiation: orchestrate.c:MVM_string_ci_init Unexecuted instantiation: allocation.c:MVM_string_ci_init Unexecuted instantiation: worklist.c:MVM_string_ci_init Unexecuted instantiation: nativecall_dyncall.c:MVM_string_ci_init Unexecuted instantiation: collect.c:MVM_string_ci_init Unexecuted instantiation: gen2.c:MVM_string_ci_init Unexecuted instantiation: wb.c:MVM_string_ci_init Unexecuted instantiation: objectid.c:MVM_string_ci_init Unexecuted instantiation: finalize.c:MVM_string_ci_init Unexecuted instantiation: debug.c:MVM_string_ci_init Unexecuted instantiation: io.c:MVM_string_ci_init Unexecuted instantiation: eventloop.c:MVM_string_ci_init Unexecuted instantiation: syncfile.c:MVM_string_ci_init Unexecuted instantiation: bytecodedump.c:MVM_string_ci_init Unexecuted instantiation: args.c:MVM_string_ci_init Unexecuted instantiation: exceptions.c:MVM_string_ci_init Unexecuted instantiation: interp.c:MVM_string_ci_init Unexecuted instantiation: threadcontext.c:MVM_string_ci_init Unexecuted instantiation: compunit.c:MVM_string_ci_init Unexecuted instantiation: bytecode.c:MVM_string_ci_init Unexecuted instantiation: frame.c:MVM_string_ci_init Unexecuted instantiation: callstack.c:MVM_string_ci_init Unexecuted instantiation: validation.c:MVM_string_ci_init Unexecuted instantiation: syncsocket.c:MVM_string_ci_init Unexecuted instantiation: threads.c:MVM_string_ci_init Line | Count | Source | 233 | 19 | MVMint32 translate_newlines, MVMint32 pass_utfc8_synthetics) { | 234 | 19 | /* Initialize our underlying grapheme iterator. */ | 235 | 19 | MVM_string_gi_init(tc, &(ci->gi), s); | 236 | 19 | | 237 | 19 | /* We've no currently active synthetic codepoint (and other fields are | 238 | 19 | * unused until we do, so leave them alone for now). */ | 239 | 19 | ci->synth_codes = NULL; | 240 | 19 | ci->translate_newlines = translate_newlines; | 241 | 19 | ci->pass_utfc8_synthetics = pass_utfc8_synthetics; | 242 | 19 | }; |
Unexecuted instantiation: hll.c:MVM_string_ci_init Unexecuted instantiation: loadbytecode.c:MVM_string_ci_init Unexecuted instantiation: num.c:MVM_string_ci_init Unexecuted instantiation: coerce.c:MVM_string_ci_init Unexecuted instantiation: dll.c:MVM_string_ci_init Unexecuted instantiation: ext.c:MVM_string_ci_init Unexecuted instantiation: nativecall.c:MVM_string_ci_init Unexecuted instantiation: MVMThread.c:MVM_string_ci_init Unexecuted instantiation: P6opaque.c:MVM_string_ci_init Unexecuted instantiation: MVMCode.c:MVM_string_ci_init Unexecuted instantiation: MVMOSHandle.c:MVM_string_ci_init Unexecuted instantiation: MVMCompUnit.c:MVM_string_ci_init Unexecuted instantiation: MVMStaticFrame.c:MVM_string_ci_init Unexecuted instantiation: P6int.c:MVM_string_ci_init Unexecuted instantiation: P6num.c:MVM_string_ci_init Unexecuted instantiation: Uninstantiable.c:MVM_string_ci_init Unexecuted instantiation: HashAttrStore.c:MVM_string_ci_init Unexecuted instantiation: P6str.c:MVM_string_ci_init Unexecuted instantiation: MVMIter.c:MVM_string_ci_init Unexecuted instantiation: MVMContext.c:MVM_string_ci_init Unexecuted instantiation: SCRef.c:MVM_string_ci_init Unexecuted instantiation: MVMCallCapture.c:MVM_string_ci_init Unexecuted instantiation: P6bigint.c:MVM_string_ci_init Unexecuted instantiation: NFA.c:MVM_string_ci_init Unexecuted instantiation: MVMException.c:MVM_string_ci_init Unexecuted instantiation: MVMDLLSym.c:MVM_string_ci_init Unexecuted instantiation: MVMMultiCache.c:MVM_string_ci_init Unexecuted instantiation: reprconv.c:MVM_string_ci_init Unexecuted instantiation: fileops.c:MVM_string_ci_init Unexecuted instantiation: dirops.c:MVM_string_ci_init Unexecuted instantiation: procops.c:MVM_string_ci_init Unexecuted instantiation: timers.c:MVM_string_ci_init Unexecuted instantiation: filewatchers.c:MVM_string_ci_init Unexecuted instantiation: signals.c:MVM_string_ci_init Unexecuted instantiation: asyncsocket.c:MVM_string_ci_init Unexecuted instantiation: asyncsocketudp.c:MVM_string_ci_init Unexecuted instantiation: reprs.c:MVM_string_ci_init Unexecuted instantiation: callsite.c:MVM_string_ci_init Unexecuted instantiation: containers.c:MVM_string_ci_init Unexecuted instantiation: parametric.c:MVM_string_ci_init Unexecuted instantiation: MVMString.c:MVM_string_ci_init Unexecuted instantiation: VMArray.c:MVM_string_ci_init Unexecuted instantiation: MVMHash.c:MVM_string_ci_init Unexecuted instantiation: MVMCFunction.c:MVM_string_ci_init Unexecuted instantiation: KnowHOWREPR.c:MVM_string_ci_init Unexecuted instantiation: KnowHOWAttributeREPR.c:MVM_string_ci_init |
243 | | /* Iterates on a grapheme. Returns the number of codepoints in the grapheme */ |
244 | 14 | MVM_STATIC_INLINE MVMGrapheme32 MVM_string_grapheme_ci_init(MVMThreadContext *tc, MVMCodepointIter *ci, MVMGrapheme32 g, MVMint32 pass_utfc8_synthetics) { |
245 | 14 | MVMNFGSynthetic *synth = NULL; |
246 | 14 | if (g < 0) { |
247 | 7 | /* Get the synthetics info. */ |
248 | 7 | synth = MVM_nfg_get_synthetic_info(tc, g); |
249 | 7 | } |
250 | 14 | /* If we got a synth, but *not* if we are supposed to pass utf8-c8 synthetics |
251 | 14 | * and it is a utf8-c8 synthetic */ |
252 | 14 | if (synth && !(pass_utfc8_synthetics && synth->is_utf8_c8)) { |
253 | 7 | /* Set up the iterator so in the next iteration we will start to |
254 | 7 | * hand back codepoints after the initial. |
255 | 7 | * TODO: This may be able to be optimized |
256 | 7 | * to remove first_code. */ |
257 | 7 | ci->synth_codes = synth->codes + 1; |
258 | 7 | ci->visited_synth_codes = -1; |
259 | 7 | ci->total_synth_codes = synth->num_codes - 1; |
260 | 7 | ci->first_code = synth->codes[0]; |
261 | 7 | } |
262 | 7 | else { |
263 | 7 | ci->synth_codes = NULL; |
264 | 7 | ci->visited_synth_codes = -1; |
265 | 7 | ci->total_synth_codes = 0; |
266 | 7 | ci->first_code = g; |
267 | 7 | } |
268 | 14 | return ci->total_synth_codes + 1; |
269 | 14 | } Unexecuted instantiation: containers.c:MVM_string_grapheme_ci_init Unexecuted instantiation: P6opaque.c:MVM_string_grapheme_ci_init Unexecuted instantiation: P6str.c:MVM_string_grapheme_ci_init Unexecuted instantiation: KnowHOWAttributeREPR.c:MVM_string_grapheme_ci_init Unexecuted instantiation: KnowHOWREPR.c:MVM_string_grapheme_ci_init Unexecuted instantiation: MVMCFunction.c:MVM_string_grapheme_ci_init Unexecuted instantiation: MVMHash.c:MVM_string_grapheme_ci_init Unexecuted instantiation: VMArray.c:MVM_string_grapheme_ci_init Unexecuted instantiation: MVMString.c:MVM_string_grapheme_ci_init Unexecuted instantiation: parametric.c:MVM_string_grapheme_ci_init Unexecuted instantiation: MVMCode.c:MVM_string_grapheme_ci_init Unexecuted instantiation: reprconv.c:MVM_string_grapheme_ci_init Unexecuted instantiation: reprs.c:MVM_string_grapheme_ci_init Unexecuted instantiation: asyncsocketudp.c:MVM_string_grapheme_ci_init Unexecuted instantiation: asyncsocket.c:MVM_string_grapheme_ci_init Unexecuted instantiation: signals.c:MVM_string_grapheme_ci_init Unexecuted instantiation: filewatchers.c:MVM_string_grapheme_ci_init Unexecuted instantiation: timers.c:MVM_string_grapheme_ci_init Unexecuted instantiation: procops.c:MVM_string_grapheme_ci_init Unexecuted instantiation: dirops.c:MVM_string_grapheme_ci_init Unexecuted instantiation: MVMIter.c:MVM_string_grapheme_ci_init Unexecuted instantiation: MVMContinuation.c:MVM_string_grapheme_ci_init Unexecuted instantiation: MVMMultiCache.c:MVM_string_grapheme_ci_init Unexecuted instantiation: MVMDLLSym.c:MVM_string_grapheme_ci_init Unexecuted instantiation: MVMException.c:MVM_string_grapheme_ci_init Unexecuted instantiation: NFA.c:MVM_string_grapheme_ci_init Unexecuted instantiation: P6bigint.c:MVM_string_grapheme_ci_init Unexecuted instantiation: MVMCallCapture.c:MVM_string_grapheme_ci_init Unexecuted instantiation: SCRef.c:MVM_string_grapheme_ci_init Unexecuted instantiation: MVMContext.c:MVM_string_grapheme_ci_init Unexecuted instantiation: fileops.c:MVM_string_grapheme_ci_init Unexecuted instantiation: MVMThread.c:MVM_string_grapheme_ci_init Unexecuted instantiation: HashAttrStore.c:MVM_string_grapheme_ci_init Unexecuted instantiation: Uninstantiable.c:MVM_string_grapheme_ci_init Unexecuted instantiation: P6num.c:MVM_string_grapheme_ci_init Unexecuted instantiation: P6int.c:MVM_string_grapheme_ci_init Unexecuted instantiation: MVMStaticFrame.c:MVM_string_grapheme_ci_init Unexecuted instantiation: MVMCompUnit.c:MVM_string_grapheme_ci_init Unexecuted instantiation: MVMOSHandle.c:MVM_string_grapheme_ci_init ops.c:MVM_string_grapheme_ci_init Line | Count | Source | 244 | 14 | MVM_STATIC_INLINE MVMGrapheme32 MVM_string_grapheme_ci_init(MVMThreadContext *tc, MVMCodepointIter *ci, MVMGrapheme32 g, MVMint32 pass_utfc8_synthetics) { | 245 | 14 | MVMNFGSynthetic *synth = NULL; | 246 | 14 | if (g < 0) { | 247 | 7 | /* Get the synthetics info. */ | 248 | 7 | synth = MVM_nfg_get_synthetic_info(tc, g); | 249 | 7 | } | 250 | 14 | /* If we got a synth, but *not* if we are supposed to pass utf8-c8 synthetics | 251 | 14 | * and it is a utf8-c8 synthetic */ | 252 | 14 | if (synth && !(pass_utfc8_synthetics && synth->is_utf8_c8)) { | 253 | 7 | /* Set up the iterator so in the next iteration we will start to | 254 | 7 | * hand back codepoints after the initial. | 255 | 7 | * TODO: This may be able to be optimized | 256 | 7 | * to remove first_code. */ | 257 | 7 | ci->synth_codes = synth->codes + 1; | 258 | 7 | ci->visited_synth_codes = -1; | 259 | 7 | ci->total_synth_codes = synth->num_codes - 1; | 260 | 7 | ci->first_code = synth->codes[0]; | 261 | 7 | } | 262 | 7 | else { | 263 | 7 | ci->synth_codes = NULL; | 264 | 7 | ci->visited_synth_codes = -1; | 265 | 7 | ci->total_synth_codes = 0; | 266 | 7 | ci->first_code = g; | 267 | 7 | } | 268 | 14 | return ci->total_synth_codes + 1; | 269 | 14 | } |
Unexecuted instantiation: continuation.c:MVM_string_grapheme_ci_init Unexecuted instantiation: nativecall_dyncall.c:MVM_string_grapheme_ci_init Unexecuted instantiation: nativecall.c:MVM_string_grapheme_ci_init Unexecuted instantiation: ext.c:MVM_string_grapheme_ci_init Unexecuted instantiation: dll.c:MVM_string_grapheme_ci_init Unexecuted instantiation: coerce.c:MVM_string_grapheme_ci_init Unexecuted instantiation: num.c:MVM_string_grapheme_ci_init Unexecuted instantiation: loadbytecode.c:MVM_string_grapheme_ci_init Unexecuted instantiation: hll.c:MVM_string_grapheme_ci_init Unexecuted instantiation: intcache.c:MVM_string_grapheme_ci_init Unexecuted instantiation: threads.c:MVM_string_grapheme_ci_init Unexecuted instantiation: bytecodedump.c:MVM_string_grapheme_ci_init Unexecuted instantiation: validation.c:MVM_string_grapheme_ci_init Unexecuted instantiation: callstack.c:MVM_string_grapheme_ci_init Unexecuted instantiation: frame.c:MVM_string_grapheme_ci_init Unexecuted instantiation: bytecode.c:MVM_string_grapheme_ci_init Unexecuted instantiation: compunit.c:MVM_string_grapheme_ci_init Unexecuted instantiation: threadcontext.c:MVM_string_grapheme_ci_init Unexecuted instantiation: interp.c:MVM_string_grapheme_ci_init Unexecuted instantiation: collect.c:MVM_string_grapheme_ci_init Unexecuted instantiation: syncsocket.c:MVM_string_grapheme_ci_init Unexecuted instantiation: syncfile.c:MVM_string_grapheme_ci_init Unexecuted instantiation: eventloop.c:MVM_string_grapheme_ci_init Unexecuted instantiation: io.c:MVM_string_grapheme_ci_init Unexecuted instantiation: debug.c:MVM_string_grapheme_ci_init Unexecuted instantiation: finalize.c:MVM_string_grapheme_ci_init Unexecuted instantiation: objectid.c:MVM_string_grapheme_ci_init Unexecuted instantiation: wb.c:MVM_string_grapheme_ci_init Unexecuted instantiation: gen2.c:MVM_string_grapheme_ci_init Unexecuted instantiation: NativeCall.c:MVM_string_grapheme_ci_init Unexecuted instantiation: roots.c:MVM_string_grapheme_ci_init Unexecuted instantiation: worklist.c:MVM_string_grapheme_ci_init Unexecuted instantiation: allocation.c:MVM_string_grapheme_ci_init Unexecuted instantiation: orchestrate.c:MVM_string_grapheme_ci_init Unexecuted instantiation: config.c:MVM_string_grapheme_ci_init Unexecuted instantiation: debugserver.c:MVM_string_grapheme_ci_init Unexecuted instantiation: regionalloc.c:MVM_string_grapheme_ci_init Unexecuted instantiation: fixedsizealloc.c:MVM_string_grapheme_ci_init Unexecuted instantiation: nfg.c:MVM_string_grapheme_ci_init Unexecuted instantiation: instrument.c:MVM_string_grapheme_ci_init Unexecuted instantiation: bigintops.c:MVM_string_grapheme_ci_init Unexecuted instantiation: shiftjis_codeindex.c:MVM_string_grapheme_ci_init Unexecuted instantiation: shiftjis.c:MVM_string_grapheme_ci_init Unexecuted instantiation: windows1252.c:MVM_string_grapheme_ci_init Unexecuted instantiation: utf16.c:MVM_string_grapheme_ci_init Unexecuted instantiation: latin1.c:MVM_string_grapheme_ci_init Unexecuted instantiation: normalize.c:MVM_string_grapheme_ci_init Unexecuted instantiation: unicode.c:MVM_string_grapheme_ci_init Unexecuted instantiation: profile.c:MVM_string_grapheme_ci_init Unexecuted instantiation: utf8_c8.c:MVM_string_grapheme_ci_init Unexecuted instantiation: utf8.c:MVM_string_grapheme_ci_init Unexecuted instantiation: parse_num.c:MVM_string_grapheme_ci_init Unexecuted instantiation: ascii.c:MVM_string_grapheme_ci_init Unexecuted instantiation: decode_stream.c:MVM_string_grapheme_ci_init Unexecuted instantiation: plugin.c:MVM_string_grapheme_ci_init Unexecuted instantiation: arg_guard.c:MVM_string_grapheme_ci_init Unexecuted instantiation: plan.c:MVM_string_grapheme_ci_init Unexecuted instantiation: stats.c:MVM_string_grapheme_ci_init Unexecuted instantiation: mmap.c:MVM_string_grapheme_ci_init Unexecuted instantiation: arch.c:MVM_string_grapheme_ci_init Unexecuted instantiation: emit.c:MVM_string_grapheme_ci_init Unexecuted instantiation: interface.c:MVM_string_grapheme_ci_init Unexecuted instantiation: linear_scan.c:MVM_string_grapheme_ci_init Unexecuted instantiation: tile.c:MVM_string_grapheme_ci_init Unexecuted instantiation: expr.c:MVM_string_grapheme_ci_init Unexecuted instantiation: compile.c:MVM_string_grapheme_ci_init Unexecuted instantiation: label.c:MVM_string_grapheme_ci_init Unexecuted instantiation: time.c:MVM_string_grapheme_ci_init Unexecuted instantiation: worker.c:MVM_string_grapheme_ci_init Unexecuted instantiation: moar.c:MVM_string_grapheme_ci_init Unexecuted instantiation: memmem32.c:MVM_string_grapheme_ci_init Unexecuted instantiation: random.c:MVM_string_grapheme_ci_init Unexecuted instantiation: sys.c:MVM_string_grapheme_ci_init Unexecuted instantiation: line_coverage.c:MVM_string_grapheme_ci_init Unexecuted instantiation: crossthreadwrite.c:MVM_string_grapheme_ci_init Unexecuted instantiation: telemeh.c:MVM_string_grapheme_ci_init Unexecuted instantiation: heapsnapshot.c:MVM_string_grapheme_ci_init Unexecuted instantiation: MVMAsyncTask.c:MVM_string_grapheme_ci_init Unexecuted instantiation: bootstrap.c:MVM_string_grapheme_ci_init Unexecuted instantiation: 6model.c:MVM_string_grapheme_ci_init Unexecuted instantiation: MVMStaticFrameSpesh.c:MVM_string_grapheme_ci_init Unexecuted instantiation: MVMSpeshLog.c:MVM_string_grapheme_ci_init Unexecuted instantiation: Decoder.c:MVM_string_grapheme_ci_init Unexecuted instantiation: MultiDimArray.c:MVM_string_grapheme_ci_init Unexecuted instantiation: NativeRef.c:MVM_string_grapheme_ci_init Unexecuted instantiation: CPPStruct.c:MVM_string_grapheme_ci_init Unexecuted instantiation: MVMNull.c:MVM_string_grapheme_ci_init Unexecuted instantiation: sc.c:MVM_string_grapheme_ci_init Unexecuted instantiation: ConcBlockingQueue.c:MVM_string_grapheme_ci_init Unexecuted instantiation: Semaphore.c:MVM_string_grapheme_ci_init Unexecuted instantiation: ConditionVariable.c:MVM_string_grapheme_ci_init Unexecuted instantiation: ReentrantMutex.c:MVM_string_grapheme_ci_init Unexecuted instantiation: CUnion.c:MVM_string_grapheme_ci_init Unexecuted instantiation: CStruct.c:MVM_string_grapheme_ci_init Unexecuted instantiation: CArray.c:MVM_string_grapheme_ci_init Unexecuted instantiation: CStr.c:MVM_string_grapheme_ci_init Unexecuted instantiation: CPointer.c:MVM_string_grapheme_ci_init Unexecuted instantiation: facts.c:MVM_string_grapheme_ci_init Unexecuted instantiation: iterator.c:MVM_string_grapheme_ci_init Unexecuted instantiation: lookup.c:MVM_string_grapheme_ci_init Unexecuted instantiation: osr.c:MVM_string_grapheme_ci_init Unexecuted instantiation: inline.c:MVM_string_grapheme_ci_init Unexecuted instantiation: threshold.c:MVM_string_grapheme_ci_init Unexecuted instantiation: log.c:MVM_string_grapheme_ci_init Unexecuted instantiation: deopt.c:MVM_string_grapheme_ci_init Unexecuted instantiation: dead_bb_elimination.c:MVM_string_grapheme_ci_init Unexecuted instantiation: optimize.c:MVM_string_grapheme_ci_init Unexecuted instantiation: args.c:MVM_string_grapheme_ci_init Unexecuted instantiation: manipulate.c:MVM_string_grapheme_ci_init Unexecuted instantiation: candidate.c:MVM_string_grapheme_ci_init Unexecuted instantiation: codegen.c:MVM_string_grapheme_ci_init Unexecuted instantiation: graph.c:MVM_string_grapheme_ci_init Unexecuted instantiation: dump.c:MVM_string_grapheme_ci_init Unexecuted instantiation: driver.c:MVM_string_grapheme_ci_init Unexecuted instantiation: compiler.c:MVM_string_grapheme_ci_init Unexecuted instantiation: serialization.c:MVM_string_grapheme_ci_init Unexecuted instantiation: exceptions.c:MVM_string_grapheme_ci_init Unexecuted instantiation: callsite.c:MVM_string_grapheme_ci_init |
270 | | /* Only for string_grapheme_ci ops */ |
271 | 22 | MVM_STATIC_INLINE MVMCodepoint MVM_string_grapheme_ci_get_codepoint(MVMThreadContext *tc, MVMCodepointIter *ci) { |
272 | 22 | MVMCodepoint result = ci->visited_synth_codes < 0 |
273 | 14 | ? ci->first_code |
274 | 8 | : ci->synth_codes[ci->visited_synth_codes]; |
275 | 22 | ci->visited_synth_codes++; |
276 | 22 | return result; |
277 | 22 | } Unexecuted instantiation: asyncsocket.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: KnowHOWREPR.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: MVMCFunction.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: MVMHash.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: VMArray.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: MVMString.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: parametric.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: containers.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: reprconv.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: reprs.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: asyncsocketudp.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: P6str.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: signals.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: filewatchers.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: timers.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: procops.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: dirops.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: fileops.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: syncsocket.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: syncfile.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: Uninstantiable.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: emit.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: NFA.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: P6bigint.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: MVMCallCapture.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: SCRef.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: MVMContext.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: MVMIter.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: MVMThread.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: HashAttrStore.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: KnowHOWAttributeREPR.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: P6num.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: P6int.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: MVMStaticFrame.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: MVMCompUnit.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: MVMOSHandle.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: MVMCode.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: P6opaque.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: io.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: validation.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: ext.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: dll.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: coerce.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: num.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: loadbytecode.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: hll.c:MVM_string_grapheme_ci_get_codepoint ops.c:MVM_string_grapheme_ci_get_codepoint Line | Count | Source | 271 | 22 | MVM_STATIC_INLINE MVMCodepoint MVM_string_grapheme_ci_get_codepoint(MVMThreadContext *tc, MVMCodepointIter *ci) { | 272 | 22 | MVMCodepoint result = ci->visited_synth_codes < 0 | 273 | 14 | ? ci->first_code | 274 | 8 | : ci->synth_codes[ci->visited_synth_codes]; | 275 | 22 | ci->visited_synth_codes++; | 276 | 22 | return result; | 277 | 22 | } |
Unexecuted instantiation: threads.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: bytecodedump.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: nativecall.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: callstack.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: frame.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: bytecode.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: compunit.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: threadcontext.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: interp.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: exceptions.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: args.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: arch.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: allocation.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: MVMException.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: debug.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: finalize.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: objectid.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: wb.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: gen2.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: collect.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: roots.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: worklist.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: eventloop.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: orchestrate.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: config.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: debugserver.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: regionalloc.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: fixedsizealloc.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: intcache.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: continuation.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: nativecall_dyncall.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: ascii.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: windows1252.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: utf16.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: latin1.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: normalize.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: unicode.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: nfg.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: utf8_c8.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: utf8.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: parse_num.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: shiftjis.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: decode_stream.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: plugin.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: arg_guard.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: plan.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: stats.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: worker.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: iterator.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: lookup.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: osr.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: random.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: interface.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: tile.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: expr.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: compile.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: label.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: time.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: mmap.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: moar.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: memmem32.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: inline.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: sys.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: line_coverage.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: crossthreadwrite.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: telemeh.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: heapsnapshot.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: profile.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: instrument.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: bigintops.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: shiftjis_codeindex.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: CUnion.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: MultiDimArray.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: NativeRef.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: CPPStruct.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: MVMNull.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: MVMAsyncTask.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: ConcBlockingQueue.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: Semaphore.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: ConditionVariable.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: ReentrantMutex.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: Decoder.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: CStruct.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: CArray.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: CStr.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: CPointer.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: NativeCall.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: MVMContinuation.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: MVMMultiCache.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: callsite.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: MVMDLLSym.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: graph.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: threshold.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: log.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: deopt.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: dead_bb_elimination.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: optimize.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: facts.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: manipulate.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: candidate.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: codegen.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: linear_scan.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: dump.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: driver.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: compiler.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: serialization.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: sc.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: bootstrap.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: 6model.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: MVMStaticFrameSpesh.c:MVM_string_grapheme_ci_get_codepoint Unexecuted instantiation: MVMSpeshLog.c:MVM_string_grapheme_ci_get_codepoint |
278 | | |
279 | | /* Checks if there is more to read from a code point iterator; this is the |
280 | | * case if we're still walking through a synthetic or we have more things |
281 | | * available from the underlying grapheme iterator. */ |
282 | 1.90M | MVM_STATIC_INLINE MVMint32 MVM_string_ci_has_more(MVMThreadContext *tc, MVMCodepointIter *ci) { |
283 | 1.90M | return ci->synth_codes || MVM_string_gi_has_more(tc, &(ci->gi)); |
284 | 1.90M | } Unexecuted instantiation: manipulate.c:MVM_string_ci_has_more Unexecuted instantiation: bootstrap.c:MVM_string_ci_has_more Unexecuted instantiation: sc.c:MVM_string_ci_has_more Unexecuted instantiation: serialization.c:MVM_string_ci_has_more Unexecuted instantiation: compiler.c:MVM_string_ci_has_more Unexecuted instantiation: driver.c:MVM_string_ci_has_more Unexecuted instantiation: dump.c:MVM_string_ci_has_more Unexecuted instantiation: graph.c:MVM_string_ci_has_more Unexecuted instantiation: codegen.c:MVM_string_ci_has_more Unexecuted instantiation: candidate.c:MVM_string_ci_has_more Unexecuted instantiation: 6model.c:MVM_string_ci_has_more Unexecuted instantiation: facts.c:MVM_string_ci_has_more Unexecuted instantiation: optimize.c:MVM_string_ci_has_more Unexecuted instantiation: dead_bb_elimination.c:MVM_string_ci_has_more Unexecuted instantiation: deopt.c:MVM_string_ci_has_more Unexecuted instantiation: log.c:MVM_string_ci_has_more Unexecuted instantiation: threshold.c:MVM_string_ci_has_more Unexecuted instantiation: inline.c:MVM_string_ci_has_more Unexecuted instantiation: osr.c:MVM_string_ci_has_more Unexecuted instantiation: lookup.c:MVM_string_ci_has_more Unexecuted instantiation: Semaphore.c:MVM_string_ci_has_more Unexecuted instantiation: MVMContinuation.c:MVM_string_ci_has_more Unexecuted instantiation: NativeCall.c:MVM_string_ci_has_more Unexecuted instantiation: CPointer.c:MVM_string_ci_has_more Unexecuted instantiation: CStr.c:MVM_string_ci_has_more Unexecuted instantiation: CArray.c:MVM_string_ci_has_more Unexecuted instantiation: CStruct.c:MVM_string_ci_has_more Unexecuted instantiation: CUnion.c:MVM_string_ci_has_more Unexecuted instantiation: ReentrantMutex.c:MVM_string_ci_has_more Unexecuted instantiation: ConditionVariable.c:MVM_string_ci_has_more Unexecuted instantiation: iterator.c:MVM_string_ci_has_more Unexecuted instantiation: ConcBlockingQueue.c:MVM_string_ci_has_more Unexecuted instantiation: MVMAsyncTask.c:MVM_string_ci_has_more Unexecuted instantiation: MVMNull.c:MVM_string_ci_has_more Unexecuted instantiation: CPPStruct.c:MVM_string_ci_has_more Unexecuted instantiation: NativeRef.c:MVM_string_ci_has_more Unexecuted instantiation: MultiDimArray.c:MVM_string_ci_has_more Unexecuted instantiation: Decoder.c:MVM_string_ci_has_more Unexecuted instantiation: MVMSpeshLog.c:MVM_string_ci_has_more Unexecuted instantiation: MVMStaticFrameSpesh.c:MVM_string_ci_has_more Unexecuted instantiation: mmap.c:MVM_string_ci_has_more Unexecuted instantiation: profile.c:MVM_string_ci_has_more Unexecuted instantiation: heapsnapshot.c:MVM_string_ci_has_more Unexecuted instantiation: telemeh.c:MVM_string_ci_has_more Unexecuted instantiation: crossthreadwrite.c:MVM_string_ci_has_more Unexecuted instantiation: line_coverage.c:MVM_string_ci_has_more Unexecuted instantiation: sys.c:MVM_string_ci_has_more Unexecuted instantiation: random.c:MVM_string_ci_has_more Unexecuted instantiation: memmem32.c:MVM_string_ci_has_more Unexecuted instantiation: moar.c:MVM_string_ci_has_more Unexecuted instantiation: instrument.c:MVM_string_ci_has_more Unexecuted instantiation: time.c:MVM_string_ci_has_more Unexecuted instantiation: label.c:MVM_string_ci_has_more Unexecuted instantiation: compile.c:MVM_string_ci_has_more Unexecuted instantiation: expr.c:MVM_string_ci_has_more Unexecuted instantiation: tile.c:MVM_string_ci_has_more Unexecuted instantiation: linear_scan.c:MVM_string_ci_has_more Unexecuted instantiation: interface.c:MVM_string_ci_has_more Unexecuted instantiation: emit.c:MVM_string_ci_has_more Unexecuted instantiation: arch.c:MVM_string_ci_has_more Unexecuted instantiation: utf8_c8.c:MVM_string_ci_has_more Unexecuted instantiation: worker.c:MVM_string_ci_has_more Unexecuted instantiation: stats.c:MVM_string_ci_has_more Unexecuted instantiation: plan.c:MVM_string_ci_has_more Unexecuted instantiation: arg_guard.c:MVM_string_ci_has_more Unexecuted instantiation: plugin.c:MVM_string_ci_has_more Unexecuted instantiation: decode_stream.c:MVM_string_ci_has_more ascii.c:MVM_string_ci_has_more Line | Count | Source | 282 | 33.6k | MVM_STATIC_INLINE MVMint32 MVM_string_ci_has_more(MVMThreadContext *tc, MVMCodepointIter *ci) { | 283 | 33.6k | return ci->synth_codes || MVM_string_gi_has_more(tc, &(ci->gi)); | 284 | 33.6k | } |
parse_num.c:MVM_string_ci_has_more Line | Count | Source | 282 | 80.0k | MVM_STATIC_INLINE MVMint32 MVM_string_ci_has_more(MVMThreadContext *tc, MVMCodepointIter *ci) { | 283 | 80.0k | return ci->synth_codes || MVM_string_gi_has_more(tc, &(ci->gi)); | 284 | 80.0k | } |
utf8.c:MVM_string_ci_has_more Line | Count | Source | 282 | 1.37M | MVM_STATIC_INLINE MVMint32 MVM_string_ci_has_more(MVMThreadContext *tc, MVMCodepointIter *ci) { | 283 | 1.37M | return ci->synth_codes || MVM_string_gi_has_more(tc, &(ci->gi)); | 284 | 1.37M | } |
Unexecuted instantiation: callsite.c:MVM_string_ci_has_more Unexecuted instantiation: nfg.c:MVM_string_ci_has_more Unexecuted instantiation: unicode.c:MVM_string_ci_has_more normalize.c:MVM_string_ci_has_more Line | Count | Source | 282 | 6 | MVM_STATIC_INLINE MVMint32 MVM_string_ci_has_more(MVMThreadContext *tc, MVMCodepointIter *ci) { | 283 | 5 | return ci->synth_codes || MVM_string_gi_has_more(tc, &(ci->gi)); | 284 | 6 | } |
latin1.c:MVM_string_ci_has_more Line | Count | Source | 282 | 412k | MVM_STATIC_INLINE MVMint32 MVM_string_ci_has_more(MVMThreadContext *tc, MVMCodepointIter *ci) { | 283 | 412k | return ci->synth_codes || MVM_string_gi_has_more(tc, &(ci->gi)); | 284 | 412k | } |
utf16.c:MVM_string_ci_has_more Line | Count | Source | 282 | 2 | MVM_STATIC_INLINE MVMint32 MVM_string_ci_has_more(MVMThreadContext *tc, MVMCodepointIter *ci) { | 283 | 2 | return ci->synth_codes || MVM_string_gi_has_more(tc, &(ci->gi)); | 284 | 2 | } |
windows1252.c:MVM_string_ci_has_more Line | Count | Source | 282 | 85 | MVM_STATIC_INLINE MVMint32 MVM_string_ci_has_more(MVMThreadContext *tc, MVMCodepointIter *ci) { | 283 | 85 | return ci->synth_codes || MVM_string_gi_has_more(tc, &(ci->gi)); | 284 | 85 | } |
Unexecuted instantiation: shiftjis.c:MVM_string_ci_has_more Unexecuted instantiation: shiftjis_codeindex.c:MVM_string_ci_has_more Unexecuted instantiation: bigintops.c:MVM_string_ci_has_more Unexecuted instantiation: worklist.c:MVM_string_ci_has_more Unexecuted instantiation: nativecall_dyncall.c:MVM_string_ci_has_more Unexecuted instantiation: continuation.c:MVM_string_ci_has_more Unexecuted instantiation: intcache.c:MVM_string_ci_has_more Unexecuted instantiation: fixedsizealloc.c:MVM_string_ci_has_more Unexecuted instantiation: regionalloc.c:MVM_string_ci_has_more Unexecuted instantiation: debugserver.c:MVM_string_ci_has_more Unexecuted instantiation: config.c:MVM_string_ci_has_more Unexecuted instantiation: orchestrate.c:MVM_string_ci_has_more Unexecuted instantiation: allocation.c:MVM_string_ci_has_more Unexecuted instantiation: nativecall.c:MVM_string_ci_has_more Unexecuted instantiation: roots.c:MVM_string_ci_has_more Unexecuted instantiation: collect.c:MVM_string_ci_has_more Unexecuted instantiation: gen2.c:MVM_string_ci_has_more Unexecuted instantiation: wb.c:MVM_string_ci_has_more Unexecuted instantiation: objectid.c:MVM_string_ci_has_more Unexecuted instantiation: finalize.c:MVM_string_ci_has_more Unexecuted instantiation: debug.c:MVM_string_ci_has_more Unexecuted instantiation: io.c:MVM_string_ci_has_more Unexecuted instantiation: eventloop.c:MVM_string_ci_has_more Unexecuted instantiation: validation.c:MVM_string_ci_has_more Unexecuted instantiation: MVMMultiCache.c:MVM_string_ci_has_more Unexecuted instantiation: args.c:MVM_string_ci_has_more Unexecuted instantiation: exceptions.c:MVM_string_ci_has_more Unexecuted instantiation: interp.c:MVM_string_ci_has_more Unexecuted instantiation: threadcontext.c:MVM_string_ci_has_more Unexecuted instantiation: compunit.c:MVM_string_ci_has_more Unexecuted instantiation: bytecode.c:MVM_string_ci_has_more Unexecuted instantiation: frame.c:MVM_string_ci_has_more Unexecuted instantiation: callstack.c:MVM_string_ci_has_more Unexecuted instantiation: MVMDLLSym.c:MVM_string_ci_has_more Unexecuted instantiation: bytecodedump.c:MVM_string_ci_has_more Unexecuted instantiation: threads.c:MVM_string_ci_has_more ops.c:MVM_string_ci_has_more Line | Count | Source | 282 | 161 | MVM_STATIC_INLINE MVMint32 MVM_string_ci_has_more(MVMThreadContext *tc, MVMCodepointIter *ci) { | 283 | 153 | return ci->synth_codes || MVM_string_gi_has_more(tc, &(ci->gi)); | 284 | 161 | } |
Unexecuted instantiation: hll.c:MVM_string_ci_has_more Unexecuted instantiation: loadbytecode.c:MVM_string_ci_has_more Unexecuted instantiation: num.c:MVM_string_ci_has_more Unexecuted instantiation: coerce.c:MVM_string_ci_has_more Unexecuted instantiation: dll.c:MVM_string_ci_has_more Unexecuted instantiation: ext.c:MVM_string_ci_has_more Unexecuted instantiation: HashAttrStore.c:MVM_string_ci_has_more Unexecuted instantiation: P6str.c:MVM_string_ci_has_more Unexecuted instantiation: P6opaque.c:MVM_string_ci_has_more Unexecuted instantiation: MVMCode.c:MVM_string_ci_has_more Unexecuted instantiation: MVMOSHandle.c:MVM_string_ci_has_more Unexecuted instantiation: MVMCompUnit.c:MVM_string_ci_has_more Unexecuted instantiation: MVMStaticFrame.c:MVM_string_ci_has_more Unexecuted instantiation: P6int.c:MVM_string_ci_has_more Unexecuted instantiation: P6num.c:MVM_string_ci_has_more Unexecuted instantiation: Uninstantiable.c:MVM_string_ci_has_more Unexecuted instantiation: syncsocket.c:MVM_string_ci_has_more Unexecuted instantiation: MVMThread.c:MVM_string_ci_has_more Unexecuted instantiation: MVMIter.c:MVM_string_ci_has_more Unexecuted instantiation: MVMContext.c:MVM_string_ci_has_more Unexecuted instantiation: SCRef.c:MVM_string_ci_has_more Unexecuted instantiation: MVMCallCapture.c:MVM_string_ci_has_more Unexecuted instantiation: P6bigint.c:MVM_string_ci_has_more Unexecuted instantiation: NFA.c:MVM_string_ci_has_more Unexecuted instantiation: MVMException.c:MVM_string_ci_has_more Unexecuted instantiation: syncfile.c:MVM_string_ci_has_more Unexecuted instantiation: KnowHOWREPR.c:MVM_string_ci_has_more Unexecuted instantiation: KnowHOWAttributeREPR.c:MVM_string_ci_has_more Unexecuted instantiation: fileops.c:MVM_string_ci_has_more Unexecuted instantiation: dirops.c:MVM_string_ci_has_more Unexecuted instantiation: procops.c:MVM_string_ci_has_more Unexecuted instantiation: timers.c:MVM_string_ci_has_more Unexecuted instantiation: filewatchers.c:MVM_string_ci_has_more Unexecuted instantiation: signals.c:MVM_string_ci_has_more Unexecuted instantiation: asyncsocket.c:MVM_string_ci_has_more Unexecuted instantiation: asyncsocketudp.c:MVM_string_ci_has_more Unexecuted instantiation: reprconv.c:MVM_string_ci_has_more Unexecuted instantiation: containers.c:MVM_string_ci_has_more Unexecuted instantiation: parametric.c:MVM_string_ci_has_more Unexecuted instantiation: MVMString.c:MVM_string_ci_has_more Unexecuted instantiation: VMArray.c:MVM_string_ci_has_more Unexecuted instantiation: MVMHash.c:MVM_string_ci_has_more Unexecuted instantiation: MVMCFunction.c:MVM_string_ci_has_more Unexecuted instantiation: reprs.c:MVM_string_ci_has_more |
285 | | /* Only for use with string_grapheme_ci ops */ |
286 | 36 | MVM_STATIC_INLINE MVMint32 MVM_string_grapheme_ci_has_more(MVMThreadContext *tc, MVMCodepointIter *ci) { |
287 | 36 | return ci->visited_synth_codes < ci->total_synth_codes; |
288 | 36 | } Unexecuted instantiation: containers.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: parametric.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: MVMString.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: VMArray.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: MVMHash.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: MVMCFunction.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: KnowHOWREPR.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: KnowHOWAttributeREPR.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: P6str.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: reprconv.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: reprs.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: asyncsocketudp.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: asyncsocket.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: signals.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: filewatchers.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: timers.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: procops.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: dirops.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: fileops.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: MVMIter.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: MVMContinuation.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: MVMMultiCache.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: MVMDLLSym.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: MVMException.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: NFA.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: P6bigint.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: MVMCallCapture.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: SCRef.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: MVMContext.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: P6opaque.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: MVMThread.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: HashAttrStore.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: Uninstantiable.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: P6num.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: P6int.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: MVMStaticFrame.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: MVMCompUnit.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: MVMOSHandle.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: MVMCode.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: bytecodedump.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: nativecall.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: ext.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: dll.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: coerce.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: num.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: loadbytecode.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: hll.c:MVM_string_grapheme_ci_has_more ops.c:MVM_string_grapheme_ci_has_more Line | Count | Source | 286 | 36 | MVM_STATIC_INLINE MVMint32 MVM_string_grapheme_ci_has_more(MVMThreadContext *tc, MVMCodepointIter *ci) { | 287 | 36 | return ci->visited_synth_codes < ci->total_synth_codes; | 288 | 36 | } |
Unexecuted instantiation: threads.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: nativecall_dyncall.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: validation.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: callstack.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: frame.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: bytecode.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: compunit.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: threadcontext.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: interp.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: exceptions.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: args.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: roots.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: syncfile.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: eventloop.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: io.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: debug.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: finalize.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: objectid.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: wb.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: gen2.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: collect.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: syncsocket.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: worklist.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: allocation.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: orchestrate.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: config.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: debugserver.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: regionalloc.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: fixedsizealloc.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: intcache.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: continuation.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: nfg.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: instrument.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: bigintops.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: shiftjis_codeindex.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: shiftjis.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: windows1252.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: utf16.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: latin1.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: normalize.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: unicode.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: profile.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: utf8_c8.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: utf8.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: parse_num.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: ascii.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: decode_stream.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: plugin.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: arg_guard.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: plan.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: NativeCall.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: time.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: callsite.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: arch.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: emit.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: interface.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: linear_scan.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: tile.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: expr.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: compile.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: label.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: stats.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: mmap.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: moar.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: memmem32.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: random.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: sys.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: line_coverage.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: crossthreadwrite.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: telemeh.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: heapsnapshot.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: MVMAsyncTask.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: worker.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: 6model.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: MVMStaticFrameSpesh.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: MVMSpeshLog.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: Decoder.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: MultiDimArray.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: NativeRef.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: CPPStruct.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: MVMNull.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: bootstrap.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: ConcBlockingQueue.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: Semaphore.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: ConditionVariable.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: ReentrantMutex.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: CUnion.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: CStruct.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: CArray.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: CStr.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: CPointer.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: optimize.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: iterator.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: lookup.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: osr.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: inline.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: threshold.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: log.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: deopt.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: dead_bb_elimination.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: sc.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: facts.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: manipulate.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: candidate.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: codegen.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: graph.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: dump.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: driver.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: compiler.c:MVM_string_grapheme_ci_has_more Unexecuted instantiation: serialization.c:MVM_string_grapheme_ci_has_more |
289 | | |
290 | | /* Gets the next code point. */ |
291 | 1.82M | MVM_STATIC_INLINE MVMCodepoint MVM_string_ci_get_codepoint(MVMThreadContext *tc, MVMCodepointIter *ci) { |
292 | 1.82M | MVMCodepoint result; |
293 | 1.82M | |
294 | 1.82M | /* Do we have combiners from a synthetic to return? */ |
295 | 1.82M | if (ci->synth_codes) { |
296 | 31 | /* Take the current combiner as the result. */ |
297 | 31 | result = ci->synth_codes[ci->visited_synth_codes]; |
298 | 31 | |
299 | 31 | /* If we've seen all of the synthetics, clear up so we'll take another |
300 | 31 | * grapheme next time around. */ |
301 | 31 | ci->visited_synth_codes++; |
302 | 31 | if (ci->visited_synth_codes == ci->total_synth_codes) |
303 | 31 | ci->synth_codes = NULL; |
304 | 31 | } |
305 | 1.82M | |
306 | 1.82M | /* Otherwise, proceed to the next grapheme. */ |
307 | 1.82M | else { |
308 | 1.82M | MVMGrapheme32 g = MVM_string_gi_get_grapheme(tc, &(ci->gi)); |
309 | 1.82M | #ifdef _WIN32 |
310 | | if (ci->translate_newlines && g == '\n') |
311 | | g = MVM_nfg_crlf_grapheme(tc); |
312 | | #endif |
313 | 1.82M | if (g >= 0) { |
314 | 1.82M | /* It's not a synthetic, so we're done. */ |
315 | 1.82M | result = (MVMCodepoint)g; |
316 | 1.82M | } |
317 | 31 | else { |
318 | 31 | /* It's a synthetic. Look it up. */ |
319 | 31 | MVMNFGSynthetic *synth = MVM_nfg_get_synthetic_info(tc, g); |
320 | 31 | /* If we have pass_utfc8_synthetics set and it's a utf_c8 codepoint |
321 | 31 | * pass it back unchanged */ |
322 | 31 | if (ci->pass_utfc8_synthetics && synth->is_utf8_c8) { |
323 | 0 | result = g; |
324 | 0 | } |
325 | 31 | else { |
326 | 31 | /* Set up the iterator so in the next iteration we will start to |
327 | 31 | * hand back codepoints. */ |
328 | 31 | ci->synth_codes = synth->codes + 1; |
329 | 31 | ci->visited_synth_codes = 0; |
330 | 31 | /* Emulate num_combs and subtract one from num_codes */ |
331 | 31 | ci->total_synth_codes = synth->num_codes - 1; |
332 | 31 | |
333 | 31 | /* Result is the first codepoint of the `codes` array */ |
334 | 31 | result = synth->codes[0]; |
335 | 31 | } |
336 | 31 | } |
337 | 1.82M | } |
338 | 1.82M | |
339 | 1.82M | return result; |
340 | 1.82M | } Unexecuted instantiation: MVMContinuation.c:MVM_string_ci_get_codepoint Unexecuted instantiation: asyncsocketudp.c:MVM_string_ci_get_codepoint Unexecuted instantiation: KnowHOWREPR.c:MVM_string_ci_get_codepoint Unexecuted instantiation: MVMCFunction.c:MVM_string_ci_get_codepoint Unexecuted instantiation: MVMHash.c:MVM_string_ci_get_codepoint Unexecuted instantiation: VMArray.c:MVM_string_ci_get_codepoint Unexecuted instantiation: MVMString.c:MVM_string_ci_get_codepoint Unexecuted instantiation: parametric.c:MVM_string_ci_get_codepoint Unexecuted instantiation: containers.c:MVM_string_ci_get_codepoint Unexecuted instantiation: reprconv.c:MVM_string_ci_get_codepoint Unexecuted instantiation: reprs.c:MVM_string_ci_get_codepoint Unexecuted instantiation: KnowHOWAttributeREPR.c:MVM_string_ci_get_codepoint Unexecuted instantiation: asyncsocket.c:MVM_string_ci_get_codepoint Unexecuted instantiation: signals.c:MVM_string_ci_get_codepoint Unexecuted instantiation: filewatchers.c:MVM_string_ci_get_codepoint Unexecuted instantiation: timers.c:MVM_string_ci_get_codepoint Unexecuted instantiation: procops.c:MVM_string_ci_get_codepoint Unexecuted instantiation: dirops.c:MVM_string_ci_get_codepoint Unexecuted instantiation: fileops.c:MVM_string_ci_get_codepoint Unexecuted instantiation: syncsocket.c:MVM_string_ci_get_codepoint Unexecuted instantiation: syncfile.c:MVM_string_ci_get_codepoint Unexecuted instantiation: HashAttrStore.c:MVM_string_ci_get_codepoint Unexecuted instantiation: MVMDLLSym.c:MVM_string_ci_get_codepoint Unexecuted instantiation: MVMException.c:MVM_string_ci_get_codepoint Unexecuted instantiation: NFA.c:MVM_string_ci_get_codepoint Unexecuted instantiation: P6bigint.c:MVM_string_ci_get_codepoint Unexecuted instantiation: MVMCallCapture.c:MVM_string_ci_get_codepoint Unexecuted instantiation: SCRef.c:MVM_string_ci_get_codepoint Unexecuted instantiation: MVMContext.c:MVM_string_ci_get_codepoint Unexecuted instantiation: MVMIter.c:MVM_string_ci_get_codepoint Unexecuted instantiation: MVMThread.c:MVM_string_ci_get_codepoint Unexecuted instantiation: io.c:MVM_string_ci_get_codepoint Unexecuted instantiation: Uninstantiable.c:MVM_string_ci_get_codepoint Unexecuted instantiation: P6num.c:MVM_string_ci_get_codepoint Unexecuted instantiation: P6int.c:MVM_string_ci_get_codepoint Unexecuted instantiation: MVMStaticFrame.c:MVM_string_ci_get_codepoint Unexecuted instantiation: MVMCompUnit.c:MVM_string_ci_get_codepoint Unexecuted instantiation: MVMOSHandle.c:MVM_string_ci_get_codepoint Unexecuted instantiation: MVMCode.c:MVM_string_ci_get_codepoint Unexecuted instantiation: P6opaque.c:MVM_string_ci_get_codepoint Unexecuted instantiation: P6str.c:MVM_string_ci_get_codepoint Unexecuted instantiation: callstack.c:MVM_string_ci_get_codepoint Unexecuted instantiation: dll.c:MVM_string_ci_get_codepoint Unexecuted instantiation: coerce.c:MVM_string_ci_get_codepoint Unexecuted instantiation: num.c:MVM_string_ci_get_codepoint Unexecuted instantiation: loadbytecode.c:MVM_string_ci_get_codepoint Unexecuted instantiation: hll.c:MVM_string_ci_get_codepoint ops.c:MVM_string_ci_get_codepoint Line | Count | Source | 291 | 138 | MVM_STATIC_INLINE MVMCodepoint MVM_string_ci_get_codepoint(MVMThreadContext *tc, MVMCodepointIter *ci) { | 292 | 138 | MVMCodepoint result; | 293 | 138 | | 294 | 138 | /* Do we have combiners from a synthetic to return? */ | 295 | 138 | if (ci->synth_codes) { | 296 | 8 | /* Take the current combiner as the result. */ | 297 | 8 | result = ci->synth_codes[ci->visited_synth_codes]; | 298 | 8 | | 299 | 8 | /* If we've seen all of the synthetics, clear up so we'll take another | 300 | 8 | * grapheme next time around. */ | 301 | 8 | ci->visited_synth_codes++; | 302 | 8 | if (ci->visited_synth_codes == ci->total_synth_codes) | 303 | 8 | ci->synth_codes = NULL; | 304 | 8 | } | 305 | 138 | | 306 | 138 | /* Otherwise, proceed to the next grapheme. */ | 307 | 130 | else { | 308 | 130 | MVMGrapheme32 g = MVM_string_gi_get_grapheme(tc, &(ci->gi)); | 309 | 130 | #ifdef _WIN32 | 310 | | if (ci->translate_newlines && g == '\n') | 311 | | g = MVM_nfg_crlf_grapheme(tc); | 312 | | #endif | 313 | 130 | if (g >= 0) { | 314 | 122 | /* It's not a synthetic, so we're done. */ | 315 | 122 | result = (MVMCodepoint)g; | 316 | 122 | } | 317 | 8 | else { | 318 | 8 | /* It's a synthetic. Look it up. */ | 319 | 8 | MVMNFGSynthetic *synth = MVM_nfg_get_synthetic_info(tc, g); | 320 | 8 | /* If we have pass_utfc8_synthetics set and it's a utf_c8 codepoint | 321 | 8 | * pass it back unchanged */ | 322 | 8 | if (ci->pass_utfc8_synthetics && synth->is_utf8_c8) { | 323 | 0 | result = g; | 324 | 0 | } | 325 | 8 | else { | 326 | 8 | /* Set up the iterator so in the next iteration we will start to | 327 | 8 | * hand back codepoints. */ | 328 | 8 | ci->synth_codes = synth->codes + 1; | 329 | 8 | ci->visited_synth_codes = 0; | 330 | 8 | /* Emulate num_combs and subtract one from num_codes */ | 331 | 8 | ci->total_synth_codes = synth->num_codes - 1; | 332 | 8 | | 333 | 8 | /* Result is the first codepoint of the `codes` array */ | 334 | 8 | result = synth->codes[0]; | 335 | 8 | } | 336 | 8 | } | 337 | 130 | } | 338 | 138 | | 339 | 138 | return result; | 340 | 138 | } |
Unexecuted instantiation: threads.c:MVM_string_ci_get_codepoint Unexecuted instantiation: bytecodedump.c:MVM_string_ci_get_codepoint Unexecuted instantiation: validation.c:MVM_string_ci_get_codepoint Unexecuted instantiation: ext.c:MVM_string_ci_get_codepoint Unexecuted instantiation: frame.c:MVM_string_ci_get_codepoint Unexecuted instantiation: bytecode.c:MVM_string_ci_get_codepoint Unexecuted instantiation: compunit.c:MVM_string_ci_get_codepoint Unexecuted instantiation: threadcontext.c:MVM_string_ci_get_codepoint Unexecuted instantiation: interp.c:MVM_string_ci_get_codepoint Unexecuted instantiation: exceptions.c:MVM_string_ci_get_codepoint Unexecuted instantiation: args.c:MVM_string_ci_get_codepoint Unexecuted instantiation: callsite.c:MVM_string_ci_get_codepoint Unexecuted instantiation: arch.c:MVM_string_ci_get_codepoint Unexecuted instantiation: orchestrate.c:MVM_string_ci_get_codepoint Unexecuted instantiation: debug.c:MVM_string_ci_get_codepoint Unexecuted instantiation: finalize.c:MVM_string_ci_get_codepoint Unexecuted instantiation: objectid.c:MVM_string_ci_get_codepoint Unexecuted instantiation: wb.c:MVM_string_ci_get_codepoint Unexecuted instantiation: gen2.c:MVM_string_ci_get_codepoint Unexecuted instantiation: collect.c:MVM_string_ci_get_codepoint Unexecuted instantiation: roots.c:MVM_string_ci_get_codepoint Unexecuted instantiation: worklist.c:MVM_string_ci_get_codepoint Unexecuted instantiation: allocation.c:MVM_string_ci_get_codepoint Unexecuted instantiation: eventloop.c:MVM_string_ci_get_codepoint Unexecuted instantiation: config.c:MVM_string_ci_get_codepoint Unexecuted instantiation: debugserver.c:MVM_string_ci_get_codepoint Unexecuted instantiation: regionalloc.c:MVM_string_ci_get_codepoint Unexecuted instantiation: fixedsizealloc.c:MVM_string_ci_get_codepoint Unexecuted instantiation: intcache.c:MVM_string_ci_get_codepoint Unexecuted instantiation: continuation.c:MVM_string_ci_get_codepoint Unexecuted instantiation: nativecall_dyncall.c:MVM_string_ci_get_codepoint Unexecuted instantiation: nativecall.c:MVM_string_ci_get_codepoint utf8.c:MVM_string_ci_get_codepoint Line | Count | Source | 291 | 1.35M | MVM_STATIC_INLINE MVMCodepoint MVM_string_ci_get_codepoint(MVMThreadContext *tc, MVMCodepointIter *ci) { | 292 | 1.35M | MVMCodepoint result; | 293 | 1.35M | | 294 | 1.35M | /* Do we have combiners from a synthetic to return? */ | 295 | 1.35M | if (ci->synth_codes) { | 296 | 22 | /* Take the current combiner as the result. */ | 297 | 22 | result = ci->synth_codes[ci->visited_synth_codes]; | 298 | 22 | | 299 | 22 | /* If we've seen all of the synthetics, clear up so we'll take another | 300 | 22 | * grapheme next time around. */ | 301 | 22 | ci->visited_synth_codes++; | 302 | 22 | if (ci->visited_synth_codes == ci->total_synth_codes) | 303 | 22 | ci->synth_codes = NULL; | 304 | 22 | } | 305 | 1.35M | | 306 | 1.35M | /* Otherwise, proceed to the next grapheme. */ | 307 | 1.35M | else { | 308 | 1.35M | MVMGrapheme32 g = MVM_string_gi_get_grapheme(tc, &(ci->gi)); | 309 | 1.35M | #ifdef _WIN32 | 310 | | if (ci->translate_newlines && g == '\n') | 311 | | g = MVM_nfg_crlf_grapheme(tc); | 312 | | #endif | 313 | 1.35M | if (g >= 0) { | 314 | 1.35M | /* It's not a synthetic, so we're done. */ | 315 | 1.35M | result = (MVMCodepoint)g; | 316 | 1.35M | } | 317 | 22 | else { | 318 | 22 | /* It's a synthetic. Look it up. */ | 319 | 22 | MVMNFGSynthetic *synth = MVM_nfg_get_synthetic_info(tc, g); | 320 | 22 | /* If we have pass_utfc8_synthetics set and it's a utf_c8 codepoint | 321 | 22 | * pass it back unchanged */ | 322 | 22 | if (ci->pass_utfc8_synthetics && synth->is_utf8_c8) { | 323 | 0 | result = g; | 324 | 0 | } | 325 | 22 | else { | 326 | 22 | /* Set up the iterator so in the next iteration we will start to | 327 | 22 | * hand back codepoints. */ | 328 | 22 | ci->synth_codes = synth->codes + 1; | 329 | 22 | ci->visited_synth_codes = 0; | 330 | 22 | /* Emulate num_combs and subtract one from num_codes */ | 331 | 22 | ci->total_synth_codes = synth->num_codes - 1; | 332 | 22 | | 333 | 22 | /* Result is the first codepoint of the `codes` array */ | 334 | 22 | result = synth->codes[0]; | 335 | 22 | } | 336 | 22 | } | 337 | 1.35M | } | 338 | 1.35M | | 339 | 1.35M | return result; | 340 | 1.35M | } |
Unexecuted instantiation: shiftjis_codeindex.c:MVM_string_ci_get_codepoint Unexecuted instantiation: shiftjis.c:MVM_string_ci_get_codepoint windows1252.c:MVM_string_ci_get_codepoint Line | Count | Source | 291 | 74 | MVM_STATIC_INLINE MVMCodepoint MVM_string_ci_get_codepoint(MVMThreadContext *tc, MVMCodepointIter *ci) { | 292 | 74 | MVMCodepoint result; | 293 | 74 | | 294 | 74 | /* Do we have combiners from a synthetic to return? */ | 295 | 74 | if (ci->synth_codes) { | 296 | 0 | /* Take the current combiner as the result. */ | 297 | 0 | result = ci->synth_codes[ci->visited_synth_codes]; | 298 | 0 |
| 299 | 0 | /* If we've seen all of the synthetics, clear up so we'll take another | 300 | 0 | * grapheme next time around. */ | 301 | 0 | ci->visited_synth_codes++; | 302 | 0 | if (ci->visited_synth_codes == ci->total_synth_codes) | 303 | 0 | ci->synth_codes = NULL; | 304 | 0 | } | 305 | 74 | | 306 | 74 | /* Otherwise, proceed to the next grapheme. */ | 307 | 74 | else { | 308 | 74 | MVMGrapheme32 g = MVM_string_gi_get_grapheme(tc, &(ci->gi)); | 309 | 74 | #ifdef _WIN32 | 310 | | if (ci->translate_newlines && g == '\n') | 311 | | g = MVM_nfg_crlf_grapheme(tc); | 312 | | #endif | 313 | 74 | if (g >= 0) { | 314 | 74 | /* It's not a synthetic, so we're done. */ | 315 | 74 | result = (MVMCodepoint)g; | 316 | 74 | } | 317 | 0 | else { | 318 | 0 | /* It's a synthetic. Look it up. */ | 319 | 0 | MVMNFGSynthetic *synth = MVM_nfg_get_synthetic_info(tc, g); | 320 | 0 | /* If we have pass_utfc8_synthetics set and it's a utf_c8 codepoint | 321 | 0 | * pass it back unchanged */ | 322 | 0 | if (ci->pass_utfc8_synthetics && synth->is_utf8_c8) { | 323 | 0 | result = g; | 324 | 0 | } | 325 | 0 | else { | 326 | 0 | /* Set up the iterator so in the next iteration we will start to | 327 | 0 | * hand back codepoints. */ | 328 | 0 | ci->synth_codes = synth->codes + 1; | 329 | 0 | ci->visited_synth_codes = 0; | 330 | 0 | /* Emulate num_combs and subtract one from num_codes */ | 331 | 0 | ci->total_synth_codes = synth->num_codes - 1; | 332 | 0 |
| 333 | 0 | /* Result is the first codepoint of the `codes` array */ | 334 | 0 | result = synth->codes[0]; | 335 | 0 | } | 336 | 0 | } | 337 | 74 | } | 338 | 74 | | 339 | 74 | return result; | 340 | 74 | } |
utf16.c:MVM_string_ci_get_codepoint Line | Count | Source | 291 | 1 | MVM_STATIC_INLINE MVMCodepoint MVM_string_ci_get_codepoint(MVMThreadContext *tc, MVMCodepointIter *ci) { | 292 | 1 | MVMCodepoint result; | 293 | 1 | | 294 | 1 | /* Do we have combiners from a synthetic to return? */ | 295 | 1 | if (ci->synth_codes) { | 296 | 0 | /* Take the current combiner as the result. */ | 297 | 0 | result = ci->synth_codes[ci->visited_synth_codes]; | 298 | 0 |
| 299 | 0 | /* If we've seen all of the synthetics, clear up so we'll take another | 300 | 0 | * grapheme next time around. */ | 301 | 0 | ci->visited_synth_codes++; | 302 | 0 | if (ci->visited_synth_codes == ci->total_synth_codes) | 303 | 0 | ci->synth_codes = NULL; | 304 | 0 | } | 305 | 1 | | 306 | 1 | /* Otherwise, proceed to the next grapheme. */ | 307 | 1 | else { | 308 | 1 | MVMGrapheme32 g = MVM_string_gi_get_grapheme(tc, &(ci->gi)); | 309 | 1 | #ifdef _WIN32 | 310 | | if (ci->translate_newlines && g == '\n') | 311 | | g = MVM_nfg_crlf_grapheme(tc); | 312 | | #endif | 313 | 1 | if (g >= 0) { | 314 | 1 | /* It's not a synthetic, so we're done. */ | 315 | 1 | result = (MVMCodepoint)g; | 316 | 1 | } | 317 | 0 | else { | 318 | 0 | /* It's a synthetic. Look it up. */ | 319 | 0 | MVMNFGSynthetic *synth = MVM_nfg_get_synthetic_info(tc, g); | 320 | 0 | /* If we have pass_utfc8_synthetics set and it's a utf_c8 codepoint | 321 | 0 | * pass it back unchanged */ | 322 | 0 | if (ci->pass_utfc8_synthetics && synth->is_utf8_c8) { | 323 | 0 | result = g; | 324 | 0 | } | 325 | 0 | else { | 326 | 0 | /* Set up the iterator so in the next iteration we will start to | 327 | 0 | * hand back codepoints. */ | 328 | 0 | ci->synth_codes = synth->codes + 1; | 329 | 0 | ci->visited_synth_codes = 0; | 330 | 0 | /* Emulate num_combs and subtract one from num_codes */ | 331 | 0 | ci->total_synth_codes = synth->num_codes - 1; | 332 | 0 |
| 333 | 0 | /* Result is the first codepoint of the `codes` array */ | 334 | 0 | result = synth->codes[0]; | 335 | 0 | } | 336 | 0 | } | 337 | 1 | } | 338 | 1 | | 339 | 1 | return result; | 340 | 1 | } |
latin1.c:MVM_string_ci_get_codepoint Line | Count | Source | 291 | 378k | MVM_STATIC_INLINE MVMCodepoint MVM_string_ci_get_codepoint(MVMThreadContext *tc, MVMCodepointIter *ci) { | 292 | 378k | MVMCodepoint result; | 293 | 378k | | 294 | 378k | /* Do we have combiners from a synthetic to return? */ | 295 | 378k | if (ci->synth_codes) { | 296 | 0 | /* Take the current combiner as the result. */ | 297 | 0 | result = ci->synth_codes[ci->visited_synth_codes]; | 298 | 0 |
| 299 | 0 | /* If we've seen all of the synthetics, clear up so we'll take another | 300 | 0 | * grapheme next time around. */ | 301 | 0 | ci->visited_synth_codes++; | 302 | 0 | if (ci->visited_synth_codes == ci->total_synth_codes) | 303 | 0 | ci->synth_codes = NULL; | 304 | 0 | } | 305 | 378k | | 306 | 378k | /* Otherwise, proceed to the next grapheme. */ | 307 | 378k | else { | 308 | 378k | MVMGrapheme32 g = MVM_string_gi_get_grapheme(tc, &(ci->gi)); | 309 | 378k | #ifdef _WIN32 | 310 | | if (ci->translate_newlines && g == '\n') | 311 | | g = MVM_nfg_crlf_grapheme(tc); | 312 | | #endif | 313 | 378k | if (g >= 0) { | 314 | 378k | /* It's not a synthetic, so we're done. */ | 315 | 378k | result = (MVMCodepoint)g; | 316 | 378k | } | 317 | 0 | else { | 318 | 0 | /* It's a synthetic. Look it up. */ | 319 | 0 | MVMNFGSynthetic *synth = MVM_nfg_get_synthetic_info(tc, g); | 320 | 0 | /* If we have pass_utfc8_synthetics set and it's a utf_c8 codepoint | 321 | 0 | * pass it back unchanged */ | 322 | 0 | if (ci->pass_utfc8_synthetics && synth->is_utf8_c8) { | 323 | 0 | result = g; | 324 | 0 | } | 325 | 0 | else { | 326 | 0 | /* Set up the iterator so in the next iteration we will start to | 327 | 0 | * hand back codepoints. */ | 328 | 0 | ci->synth_codes = synth->codes + 1; | 329 | 0 | ci->visited_synth_codes = 0; | 330 | 0 | /* Emulate num_combs and subtract one from num_codes */ | 331 | 0 | ci->total_synth_codes = synth->num_codes - 1; | 332 | 0 |
| 333 | 0 | /* Result is the first codepoint of the `codes` array */ | 334 | 0 | result = synth->codes[0]; | 335 | 0 | } | 336 | 0 | } | 337 | 378k | } | 338 | 378k | | 339 | 378k | return result; | 340 | 378k | } |
normalize.c:MVM_string_ci_get_codepoint Line | Count | Source | 291 | 4 | MVM_STATIC_INLINE MVMCodepoint MVM_string_ci_get_codepoint(MVMThreadContext *tc, MVMCodepointIter *ci) { | 292 | 4 | MVMCodepoint result; | 293 | 4 | | 294 | 4 | /* Do we have combiners from a synthetic to return? */ | 295 | 4 | if (ci->synth_codes) { | 296 | 1 | /* Take the current combiner as the result. */ | 297 | 1 | result = ci->synth_codes[ci->visited_synth_codes]; | 298 | 1 | | 299 | 1 | /* If we've seen all of the synthetics, clear up so we'll take another | 300 | 1 | * grapheme next time around. */ | 301 | 1 | ci->visited_synth_codes++; | 302 | 1 | if (ci->visited_synth_codes == ci->total_synth_codes) | 303 | 1 | ci->synth_codes = NULL; | 304 | 1 | } | 305 | 4 | | 306 | 4 | /* Otherwise, proceed to the next grapheme. */ | 307 | 3 | else { | 308 | 3 | MVMGrapheme32 g = MVM_string_gi_get_grapheme(tc, &(ci->gi)); | 309 | 3 | #ifdef _WIN32 | 310 | | if (ci->translate_newlines && g == '\n') | 311 | | g = MVM_nfg_crlf_grapheme(tc); | 312 | | #endif | 313 | 3 | if (g >= 0) { | 314 | 2 | /* It's not a synthetic, so we're done. */ | 315 | 2 | result = (MVMCodepoint)g; | 316 | 2 | } | 317 | 1 | else { | 318 | 1 | /* It's a synthetic. Look it up. */ | 319 | 1 | MVMNFGSynthetic *synth = MVM_nfg_get_synthetic_info(tc, g); | 320 | 1 | /* If we have pass_utfc8_synthetics set and it's a utf_c8 codepoint | 321 | 1 | * pass it back unchanged */ | 322 | 1 | if (ci->pass_utfc8_synthetics && synth->is_utf8_c8) { | 323 | 0 | result = g; | 324 | 0 | } | 325 | 1 | else { | 326 | 1 | /* Set up the iterator so in the next iteration we will start to | 327 | 1 | * hand back codepoints. */ | 328 | 1 | ci->synth_codes = synth->codes + 1; | 329 | 1 | ci->visited_synth_codes = 0; | 330 | 1 | /* Emulate num_combs and subtract one from num_codes */ | 331 | 1 | ci->total_synth_codes = synth->num_codes - 1; | 332 | 1 | | 333 | 1 | /* Result is the first codepoint of the `codes` array */ | 334 | 1 | result = synth->codes[0]; | 335 | 1 | } | 336 | 1 | } | 337 | 3 | } | 338 | 4 | | 339 | 4 | return result; | 340 | 4 | } |
Unexecuted instantiation: unicode.c:MVM_string_ci_get_codepoint Unexecuted instantiation: nfg.c:MVM_string_ci_get_codepoint Unexecuted instantiation: utf8_c8.c:MVM_string_ci_get_codepoint Unexecuted instantiation: bigintops.c:MVM_string_ci_get_codepoint parse_num.c:MVM_string_ci_get_codepoint Line | Count | Source | 291 | 56.4k | MVM_STATIC_INLINE MVMCodepoint MVM_string_ci_get_codepoint(MVMThreadContext *tc, MVMCodepointIter *ci) { | 292 | 56.4k | MVMCodepoint result; | 293 | 56.4k | | 294 | 56.4k | /* Do we have combiners from a synthetic to return? */ | 295 | 56.4k | if (ci->synth_codes) { | 296 | 0 | /* Take the current combiner as the result. */ | 297 | 0 | result = ci->synth_codes[ci->visited_synth_codes]; | 298 | 0 |
| 299 | 0 | /* If we've seen all of the synthetics, clear up so we'll take another | 300 | 0 | * grapheme next time around. */ | 301 | 0 | ci->visited_synth_codes++; | 302 | 0 | if (ci->visited_synth_codes == ci->total_synth_codes) | 303 | 0 | ci->synth_codes = NULL; | 304 | 0 | } | 305 | 56.4k | | 306 | 56.4k | /* Otherwise, proceed to the next grapheme. */ | 307 | 56.4k | else { | 308 | 56.4k | MVMGrapheme32 g = MVM_string_gi_get_grapheme(tc, &(ci->gi)); | 309 | 56.4k | #ifdef _WIN32 | 310 | | if (ci->translate_newlines && g == '\n') | 311 | | g = MVM_nfg_crlf_grapheme(tc); | 312 | | #endif | 313 | 56.4k | if (g >= 0) { | 314 | 56.4k | /* It's not a synthetic, so we're done. */ | 315 | 56.4k | result = (MVMCodepoint)g; | 316 | 56.4k | } | 317 | 0 | else { | 318 | 0 | /* It's a synthetic. Look it up. */ | 319 | 0 | MVMNFGSynthetic *synth = MVM_nfg_get_synthetic_info(tc, g); | 320 | 0 | /* If we have pass_utfc8_synthetics set and it's a utf_c8 codepoint | 321 | 0 | * pass it back unchanged */ | 322 | 0 | if (ci->pass_utfc8_synthetics && synth->is_utf8_c8) { | 323 | 0 | result = g; | 324 | 0 | } | 325 | 0 | else { | 326 | 0 | /* Set up the iterator so in the next iteration we will start to | 327 | 0 | * hand back codepoints. */ | 328 | 0 | ci->synth_codes = synth->codes + 1; | 329 | 0 | ci->visited_synth_codes = 0; | 330 | 0 | /* Emulate num_combs and subtract one from num_codes */ | 331 | 0 | ci->total_synth_codes = synth->num_codes - 1; | 332 | 0 |
| 333 | 0 | /* Result is the first codepoint of the `codes` array */ | 334 | 0 | result = synth->codes[0]; | 335 | 0 | } | 336 | 0 | } | 337 | 56.4k | } | 338 | 56.4k | | 339 | 56.4k | return result; | 340 | 56.4k | } |
ascii.c:MVM_string_ci_get_codepoint Line | Count | Source | 291 | 31.6k | MVM_STATIC_INLINE MVMCodepoint MVM_string_ci_get_codepoint(MVMThreadContext *tc, MVMCodepointIter *ci) { | 292 | 31.6k | MVMCodepoint result; | 293 | 31.6k | | 294 | 31.6k | /* Do we have combiners from a synthetic to return? */ | 295 | 31.6k | if (ci->synth_codes) { | 296 | 0 | /* Take the current combiner as the result. */ | 297 | 0 | result = ci->synth_codes[ci->visited_synth_codes]; | 298 | 0 |
| 299 | 0 | /* If we've seen all of the synthetics, clear up so we'll take another | 300 | 0 | * grapheme next time around. */ | 301 | 0 | ci->visited_synth_codes++; | 302 | 0 | if (ci->visited_synth_codes == ci->total_synth_codes) | 303 | 0 | ci->synth_codes = NULL; | 304 | 0 | } | 305 | 31.6k | | 306 | 31.6k | /* Otherwise, proceed to the next grapheme. */ | 307 | 31.6k | else { | 308 | 31.6k | MVMGrapheme32 g = MVM_string_gi_get_grapheme(tc, &(ci->gi)); | 309 | 31.6k | #ifdef _WIN32 | 310 | | if (ci->translate_newlines && g == '\n') | 311 | | g = MVM_nfg_crlf_grapheme(tc); | 312 | | #endif | 313 | 31.6k | if (g >= 0) { | 314 | 31.6k | /* It's not a synthetic, so we're done. */ | 315 | 31.6k | result = (MVMCodepoint)g; | 316 | 31.6k | } | 317 | 0 | else { | 318 | 0 | /* It's a synthetic. Look it up. */ | 319 | 0 | MVMNFGSynthetic *synth = MVM_nfg_get_synthetic_info(tc, g); | 320 | 0 | /* If we have pass_utfc8_synthetics set and it's a utf_c8 codepoint | 321 | 0 | * pass it back unchanged */ | 322 | 0 | if (ci->pass_utfc8_synthetics && synth->is_utf8_c8) { | 323 | 0 | result = g; | 324 | 0 | } | 325 | 0 | else { | 326 | 0 | /* Set up the iterator so in the next iteration we will start to | 327 | 0 | * hand back codepoints. */ | 328 | 0 | ci->synth_codes = synth->codes + 1; | 329 | 0 | ci->visited_synth_codes = 0; | 330 | 0 | /* Emulate num_combs and subtract one from num_codes */ | 331 | 0 | ci->total_synth_codes = synth->num_codes - 1; | 332 | 0 |
| 333 | 0 | /* Result is the first codepoint of the `codes` array */ | 334 | 0 | result = synth->codes[0]; | 335 | 0 | } | 336 | 0 | } | 337 | 31.6k | } | 338 | 31.6k | | 339 | 31.6k | return result; | 340 | 31.6k | } |
Unexecuted instantiation: decode_stream.c:MVM_string_ci_get_codepoint Unexecuted instantiation: plugin.c:MVM_string_ci_get_codepoint Unexecuted instantiation: arg_guard.c:MVM_string_ci_get_codepoint Unexecuted instantiation: plan.c:MVM_string_ci_get_codepoint Unexecuted instantiation: stats.c:MVM_string_ci_get_codepoint Unexecuted instantiation: worker.c:MVM_string_ci_get_codepoint Unexecuted instantiation: iterator.c:MVM_string_ci_get_codepoint Unexecuted instantiation: moar.c:MVM_string_ci_get_codepoint Unexecuted instantiation: emit.c:MVM_string_ci_get_codepoint Unexecuted instantiation: interface.c:MVM_string_ci_get_codepoint Unexecuted instantiation: linear_scan.c:MVM_string_ci_get_codepoint Unexecuted instantiation: tile.c:MVM_string_ci_get_codepoint Unexecuted instantiation: expr.c:MVM_string_ci_get_codepoint Unexecuted instantiation: compile.c:MVM_string_ci_get_codepoint Unexecuted instantiation: label.c:MVM_string_ci_get_codepoint Unexecuted instantiation: time.c:MVM_string_ci_get_codepoint Unexecuted instantiation: mmap.c:MVM_string_ci_get_codepoint Unexecuted instantiation: NativeCall.c:MVM_string_ci_get_codepoint Unexecuted instantiation: memmem32.c:MVM_string_ci_get_codepoint Unexecuted instantiation: random.c:MVM_string_ci_get_codepoint Unexecuted instantiation: sys.c:MVM_string_ci_get_codepoint Unexecuted instantiation: line_coverage.c:MVM_string_ci_get_codepoint Unexecuted instantiation: crossthreadwrite.c:MVM_string_ci_get_codepoint Unexecuted instantiation: telemeh.c:MVM_string_ci_get_codepoint Unexecuted instantiation: heapsnapshot.c:MVM_string_ci_get_codepoint Unexecuted instantiation: profile.c:MVM_string_ci_get_codepoint Unexecuted instantiation: instrument.c:MVM_string_ci_get_codepoint Unexecuted instantiation: ConcBlockingQueue.c:MVM_string_ci_get_codepoint Unexecuted instantiation: 6model.c:MVM_string_ci_get_codepoint Unexecuted instantiation: MVMStaticFrameSpesh.c:MVM_string_ci_get_codepoint Unexecuted instantiation: MVMSpeshLog.c:MVM_string_ci_get_codepoint Unexecuted instantiation: Decoder.c:MVM_string_ci_get_codepoint Unexecuted instantiation: MultiDimArray.c:MVM_string_ci_get_codepoint Unexecuted instantiation: NativeRef.c:MVM_string_ci_get_codepoint Unexecuted instantiation: CPPStruct.c:MVM_string_ci_get_codepoint Unexecuted instantiation: MVMNull.c:MVM_string_ci_get_codepoint Unexecuted instantiation: MVMAsyncTask.c:MVM_string_ci_get_codepoint Unexecuted instantiation: lookup.c:MVM_string_ci_get_codepoint Unexecuted instantiation: Semaphore.c:MVM_string_ci_get_codepoint Unexecuted instantiation: ConditionVariable.c:MVM_string_ci_get_codepoint Unexecuted instantiation: ReentrantMutex.c:MVM_string_ci_get_codepoint Unexecuted instantiation: CUnion.c:MVM_string_ci_get_codepoint Unexecuted instantiation: CStruct.c:MVM_string_ci_get_codepoint Unexecuted instantiation: CArray.c:MVM_string_ci_get_codepoint Unexecuted instantiation: CStr.c:MVM_string_ci_get_codepoint Unexecuted instantiation: CPointer.c:MVM_string_ci_get_codepoint Unexecuted instantiation: MVMMultiCache.c:MVM_string_ci_get_codepoint Unexecuted instantiation: sc.c:MVM_string_ci_get_codepoint Unexecuted instantiation: bootstrap.c:MVM_string_ci_get_codepoint Unexecuted instantiation: osr.c:MVM_string_ci_get_codepoint Unexecuted instantiation: inline.c:MVM_string_ci_get_codepoint Unexecuted instantiation: threshold.c:MVM_string_ci_get_codepoint Unexecuted instantiation: log.c:MVM_string_ci_get_codepoint Unexecuted instantiation: deopt.c:MVM_string_ci_get_codepoint Unexecuted instantiation: dead_bb_elimination.c:MVM_string_ci_get_codepoint Unexecuted instantiation: optimize.c:MVM_string_ci_get_codepoint Unexecuted instantiation: facts.c:MVM_string_ci_get_codepoint Unexecuted instantiation: candidate.c:MVM_string_ci_get_codepoint Unexecuted instantiation: codegen.c:MVM_string_ci_get_codepoint Unexecuted instantiation: graph.c:MVM_string_ci_get_codepoint Unexecuted instantiation: dump.c:MVM_string_ci_get_codepoint Unexecuted instantiation: driver.c:MVM_string_ci_get_codepoint Unexecuted instantiation: compiler.c:MVM_string_ci_get_codepoint Unexecuted instantiation: serialization.c:MVM_string_ci_get_codepoint Unexecuted instantiation: manipulate.c:MVM_string_ci_get_codepoint |
341 | | /* The MVMGraphemeIter_cached is used for the Knuth-Morris-Pratt algorithm |
342 | | * because often it will request the same grapheme again, and our grapheme |
343 | | * iterators only return the next grapheme */ |
344 | | struct MVMGraphemeIter_cached { |
345 | | MVMGraphemeIter gi; |
346 | | MVMGrapheme32 last_g; |
347 | | MVMStringIndex last_location; |
348 | | MVMString *string; |
349 | | }; |
350 | | typedef struct MVMGraphemeIter_cached MVMGraphemeIter_cached; |
351 | 722k | MVM_STATIC_INLINE void MVM_string_gi_cached_init (MVMThreadContext *tc, MVMGraphemeIter_cached *gic, MVMString *s, MVMint64 index) { |
352 | 722k | MVM_string_gi_init(tc, &(gic->gi), s); |
353 | 722k | if (index) MVM_string_gi_move_to(tc, &(gic->gi), index); |
354 | 722k | gic->last_location = index; |
355 | 722k | gic->last_g = MVM_string_gi_get_grapheme(tc, &(gic->gi)); |
356 | 722k | gic->string = s; |
357 | 722k | } Unexecuted instantiation: candidate.c:MVM_string_gi_cached_init Unexecuted instantiation: codegen.c:MVM_string_gi_cached_init Unexecuted instantiation: graph.c:MVM_string_gi_cached_init Unexecuted instantiation: dump.c:MVM_string_gi_cached_init Unexecuted instantiation: driver.c:MVM_string_gi_cached_init Unexecuted instantiation: compiler.c:MVM_string_gi_cached_init Unexecuted instantiation: serialization.c:MVM_string_gi_cached_init Unexecuted instantiation: sc.c:MVM_string_gi_cached_init Unexecuted instantiation: lookup.c:MVM_string_gi_cached_init Unexecuted instantiation: bootstrap.c:MVM_string_gi_cached_init Unexecuted instantiation: manipulate.c:MVM_string_gi_cached_init Unexecuted instantiation: facts.c:MVM_string_gi_cached_init Unexecuted instantiation: optimize.c:MVM_string_gi_cached_init Unexecuted instantiation: dead_bb_elimination.c:MVM_string_gi_cached_init Unexecuted instantiation: deopt.c:MVM_string_gi_cached_init Unexecuted instantiation: log.c:MVM_string_gi_cached_init Unexecuted instantiation: threshold.c:MVM_string_gi_cached_init Unexecuted instantiation: inline.c:MVM_string_gi_cached_init Unexecuted instantiation: osr.c:MVM_string_gi_cached_init Unexecuted instantiation: MVMContinuation.c:MVM_string_gi_cached_init Unexecuted instantiation: ConcBlockingQueue.c:MVM_string_gi_cached_init Unexecuted instantiation: NativeCall.c:MVM_string_gi_cached_init Unexecuted instantiation: CPointer.c:MVM_string_gi_cached_init Unexecuted instantiation: CStr.c:MVM_string_gi_cached_init Unexecuted instantiation: CArray.c:MVM_string_gi_cached_init Unexecuted instantiation: CStruct.c:MVM_string_gi_cached_init Unexecuted instantiation: CUnion.c:MVM_string_gi_cached_init Unexecuted instantiation: ReentrantMutex.c:MVM_string_gi_cached_init Unexecuted instantiation: ConditionVariable.c:MVM_string_gi_cached_init Unexecuted instantiation: Semaphore.c:MVM_string_gi_cached_init Unexecuted instantiation: 6model.c:MVM_string_gi_cached_init Unexecuted instantiation: MVMAsyncTask.c:MVM_string_gi_cached_init Unexecuted instantiation: MVMNull.c:MVM_string_gi_cached_init Unexecuted instantiation: CPPStruct.c:MVM_string_gi_cached_init Unexecuted instantiation: NativeRef.c:MVM_string_gi_cached_init Unexecuted instantiation: MultiDimArray.c:MVM_string_gi_cached_init Unexecuted instantiation: Decoder.c:MVM_string_gi_cached_init Unexecuted instantiation: MVMSpeshLog.c:MVM_string_gi_cached_init Unexecuted instantiation: MVMStaticFrameSpesh.c:MVM_string_gi_cached_init Unexecuted instantiation: mmap.c:MVM_string_gi_cached_init Unexecuted instantiation: profile.c:MVM_string_gi_cached_init Unexecuted instantiation: heapsnapshot.c:MVM_string_gi_cached_init Unexecuted instantiation: telemeh.c:MVM_string_gi_cached_init Unexecuted instantiation: crossthreadwrite.c:MVM_string_gi_cached_init Unexecuted instantiation: line_coverage.c:MVM_string_gi_cached_init Unexecuted instantiation: sys.c:MVM_string_gi_cached_init Unexecuted instantiation: random.c:MVM_string_gi_cached_init Unexecuted instantiation: memmem32.c:MVM_string_gi_cached_init Unexecuted instantiation: moar.c:MVM_string_gi_cached_init Unexecuted instantiation: instrument.c:MVM_string_gi_cached_init Unexecuted instantiation: time.c:MVM_string_gi_cached_init Unexecuted instantiation: label.c:MVM_string_gi_cached_init Unexecuted instantiation: compile.c:MVM_string_gi_cached_init Unexecuted instantiation: expr.c:MVM_string_gi_cached_init Unexecuted instantiation: tile.c:MVM_string_gi_cached_init Unexecuted instantiation: linear_scan.c:MVM_string_gi_cached_init Unexecuted instantiation: interface.c:MVM_string_gi_cached_init Unexecuted instantiation: emit.c:MVM_string_gi_cached_init Unexecuted instantiation: arch.c:MVM_string_gi_cached_init Unexecuted instantiation: utf8_c8.c:MVM_string_gi_cached_init Unexecuted instantiation: worker.c:MVM_string_gi_cached_init Unexecuted instantiation: stats.c:MVM_string_gi_cached_init Unexecuted instantiation: plan.c:MVM_string_gi_cached_init Unexecuted instantiation: arg_guard.c:MVM_string_gi_cached_init Unexecuted instantiation: plugin.c:MVM_string_gi_cached_init Unexecuted instantiation: decode_stream.c:MVM_string_gi_cached_init Unexecuted instantiation: ascii.c:MVM_string_gi_cached_init Unexecuted instantiation: parse_num.c:MVM_string_gi_cached_init Unexecuted instantiation: utf8.c:MVM_string_gi_cached_init Unexecuted instantiation: iterator.c:MVM_string_gi_cached_init Unexecuted instantiation: nfg.c:MVM_string_gi_cached_init Unexecuted instantiation: unicode.c:MVM_string_gi_cached_init Unexecuted instantiation: normalize.c:MVM_string_gi_cached_init Unexecuted instantiation: latin1.c:MVM_string_gi_cached_init Unexecuted instantiation: utf16.c:MVM_string_gi_cached_init Unexecuted instantiation: windows1252.c:MVM_string_gi_cached_init Unexecuted instantiation: shiftjis.c:MVM_string_gi_cached_init Unexecuted instantiation: shiftjis_codeindex.c:MVM_string_gi_cached_init Unexecuted instantiation: bigintops.c:MVM_string_gi_cached_init Unexecuted instantiation: allocation.c:MVM_string_gi_cached_init Unexecuted instantiation: nativecall.c:MVM_string_gi_cached_init Unexecuted instantiation: nativecall_dyncall.c:MVM_string_gi_cached_init Unexecuted instantiation: continuation.c:MVM_string_gi_cached_init Unexecuted instantiation: intcache.c:MVM_string_gi_cached_init Unexecuted instantiation: fixedsizealloc.c:MVM_string_gi_cached_init Unexecuted instantiation: regionalloc.c:MVM_string_gi_cached_init Unexecuted instantiation: debugserver.c:MVM_string_gi_cached_init Unexecuted instantiation: config.c:MVM_string_gi_cached_init Unexecuted instantiation: orchestrate.c:MVM_string_gi_cached_init Unexecuted instantiation: ext.c:MVM_string_gi_cached_init Unexecuted instantiation: worklist.c:MVM_string_gi_cached_init Unexecuted instantiation: roots.c:MVM_string_gi_cached_init Unexecuted instantiation: collect.c:MVM_string_gi_cached_init Unexecuted instantiation: gen2.c:MVM_string_gi_cached_init Unexecuted instantiation: wb.c:MVM_string_gi_cached_init Unexecuted instantiation: objectid.c:MVM_string_gi_cached_init Unexecuted instantiation: finalize.c:MVM_string_gi_cached_init Unexecuted instantiation: debug.c:MVM_string_gi_cached_init Unexecuted instantiation: io.c:MVM_string_gi_cached_init Unexecuted instantiation: callstack.c:MVM_string_gi_cached_init Unexecuted instantiation: MVMMultiCache.c:MVM_string_gi_cached_init Unexecuted instantiation: callsite.c:MVM_string_gi_cached_init Unexecuted instantiation: args.c:MVM_string_gi_cached_init Unexecuted instantiation: exceptions.c:MVM_string_gi_cached_init Unexecuted instantiation: interp.c:MVM_string_gi_cached_init Unexecuted instantiation: threadcontext.c:MVM_string_gi_cached_init Unexecuted instantiation: compunit.c:MVM_string_gi_cached_init Unexecuted instantiation: bytecode.c:MVM_string_gi_cached_init Unexecuted instantiation: frame.c:MVM_string_gi_cached_init Unexecuted instantiation: MVMDLLSym.c:MVM_string_gi_cached_init Unexecuted instantiation: validation.c:MVM_string_gi_cached_init Unexecuted instantiation: bytecodedump.c:MVM_string_gi_cached_init Unexecuted instantiation: threads.c:MVM_string_gi_cached_init ops.c:MVM_string_gi_cached_init Line | Count | Source | 351 | 9.63k | MVM_STATIC_INLINE void MVM_string_gi_cached_init (MVMThreadContext *tc, MVMGraphemeIter_cached *gic, MVMString *s, MVMint64 index) { | 352 | 9.63k | MVM_string_gi_init(tc, &(gic->gi), s); | 353 | 9.63k | if (index) MVM_string_gi_move_to(tc, &(gic->gi), index); | 354 | 9.63k | gic->last_location = index; | 355 | 9.63k | gic->last_g = MVM_string_gi_get_grapheme(tc, &(gic->gi)); | 356 | 9.63k | gic->string = s; | 357 | 9.63k | } |
Unexecuted instantiation: hll.c:MVM_string_gi_cached_init Unexecuted instantiation: loadbytecode.c:MVM_string_gi_cached_init Unexecuted instantiation: num.c:MVM_string_gi_cached_init Unexecuted instantiation: coerce.c:MVM_string_gi_cached_init Unexecuted instantiation: dll.c:MVM_string_gi_cached_init Unexecuted instantiation: HashAttrStore.c:MVM_string_gi_cached_init Unexecuted instantiation: P6str.c:MVM_string_gi_cached_init Unexecuted instantiation: P6opaque.c:MVM_string_gi_cached_init Unexecuted instantiation: MVMCode.c:MVM_string_gi_cached_init Unexecuted instantiation: MVMOSHandle.c:MVM_string_gi_cached_init Unexecuted instantiation: MVMCompUnit.c:MVM_string_gi_cached_init Unexecuted instantiation: MVMStaticFrame.c:MVM_string_gi_cached_init Unexecuted instantiation: P6int.c:MVM_string_gi_cached_init Unexecuted instantiation: P6num.c:MVM_string_gi_cached_init Unexecuted instantiation: Uninstantiable.c:MVM_string_gi_cached_init Unexecuted instantiation: syncfile.c:MVM_string_gi_cached_init Unexecuted instantiation: MVMThread.c:MVM_string_gi_cached_init Unexecuted instantiation: MVMIter.c:MVM_string_gi_cached_init Unexecuted instantiation: MVMContext.c:MVM_string_gi_cached_init Unexecuted instantiation: SCRef.c:MVM_string_gi_cached_init Unexecuted instantiation: MVMCallCapture.c:MVM_string_gi_cached_init Unexecuted instantiation: P6bigint.c:MVM_string_gi_cached_init NFA.c:MVM_string_gi_cached_init Line | Count | Source | 351 | 713k | MVM_STATIC_INLINE void MVM_string_gi_cached_init (MVMThreadContext *tc, MVMGraphemeIter_cached *gic, MVMString *s, MVMint64 index) { | 352 | 713k | MVM_string_gi_init(tc, &(gic->gi), s); | 353 | 713k | if (index) MVM_string_gi_move_to(tc, &(gic->gi), index); | 354 | 713k | gic->last_location = index; | 355 | 713k | gic->last_g = MVM_string_gi_get_grapheme(tc, &(gic->gi)); | 356 | 713k | gic->string = s; | 357 | 713k | } |
Unexecuted instantiation: MVMException.c:MVM_string_gi_cached_init Unexecuted instantiation: eventloop.c:MVM_string_gi_cached_init Unexecuted instantiation: KnowHOWREPR.c:MVM_string_gi_cached_init Unexecuted instantiation: KnowHOWAttributeREPR.c:MVM_string_gi_cached_init Unexecuted instantiation: syncsocket.c:MVM_string_gi_cached_init Unexecuted instantiation: fileops.c:MVM_string_gi_cached_init Unexecuted instantiation: dirops.c:MVM_string_gi_cached_init Unexecuted instantiation: procops.c:MVM_string_gi_cached_init Unexecuted instantiation: timers.c:MVM_string_gi_cached_init Unexecuted instantiation: filewatchers.c:MVM_string_gi_cached_init Unexecuted instantiation: signals.c:MVM_string_gi_cached_init Unexecuted instantiation: asyncsocket.c:MVM_string_gi_cached_init Unexecuted instantiation: reprs.c:MVM_string_gi_cached_init Unexecuted instantiation: asyncsocketudp.c:MVM_string_gi_cached_init Unexecuted instantiation: MVMCFunction.c:MVM_string_gi_cached_init Unexecuted instantiation: MVMHash.c:MVM_string_gi_cached_init Unexecuted instantiation: VMArray.c:MVM_string_gi_cached_init Unexecuted instantiation: MVMString.c:MVM_string_gi_cached_init Unexecuted instantiation: parametric.c:MVM_string_gi_cached_init Unexecuted instantiation: containers.c:MVM_string_gi_cached_init Unexecuted instantiation: reprconv.c:MVM_string_gi_cached_init |
358 | 8.22M | MVM_STATIC_INLINE MVMGrapheme32 MVM_string_gi_cached_get_grapheme(MVMThreadContext *tc, MVMGraphemeIter_cached *gic, MVMint64 index) { |
359 | 8.22M | /* Most likely case is we are getting the next grapheme. When that happens |
360 | 8.22M | * we will go directly to the end. */ |
361 | 8.22M | if (index == gic->last_location + 1) { |
362 | 1.39M | } |
363 | 8.22M | /* Second most likely is getting the cached grapheme */ |
364 | 6.83M | else if (index == gic->last_location) { |
365 | 6.14M | return gic->last_g; |
366 | 6.14M | } |
367 | 6.83M | /* If we have to move forward */ |
368 | 683k | else if (gic->last_location < index) { |
369 | 683k | MVM_string_gi_move_to(tc, &(gic->gi), index - gic->last_location - 1); |
370 | 683k | } |
371 | 683k | /* If we have to backtrack we need to reinitialize the grapheme iterator */ |
372 | 0 | else { |
373 | 0 | MVM_string_gi_cached_init(tc, gic, gic->string, index); |
374 | 0 | return gic->last_g; |
375 | 0 | } |
376 | 2.07M | gic->last_location = index; |
377 | 2.07M | return (gic->last_g = MVM_string_gi_get_grapheme(tc, &(gic->gi))); |
378 | 8.22M | } Unexecuted instantiation: P6str.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: KnowHOWAttributeREPR.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: KnowHOWREPR.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: MVMCFunction.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: MVMHash.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: VMArray.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: MVMString.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: parametric.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: containers.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: reprconv.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: reprs.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: asyncsocketudp.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: asyncsocket.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: signals.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: filewatchers.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: timers.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: procops.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: dirops.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: fileops.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: MVMIter.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: MVMContinuation.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: MVMMultiCache.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: MVMDLLSym.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: MVMException.c:MVM_string_gi_cached_get_grapheme NFA.c:MVM_string_gi_cached_get_grapheme Line | Count | Source | 358 | 7.61M | MVM_STATIC_INLINE MVMGrapheme32 MVM_string_gi_cached_get_grapheme(MVMThreadContext *tc, MVMGraphemeIter_cached *gic, MVMint64 index) { | 359 | 7.61M | /* Most likely case is we are getting the next grapheme. When that happens | 360 | 7.61M | * we will go directly to the end. */ | 361 | 7.61M | if (index == gic->last_location + 1) { | 362 | 818k | } | 363 | 7.61M | /* Second most likely is getting the cached grapheme */ | 364 | 6.80M | else if (index == gic->last_location) { | 365 | 6.11M | return gic->last_g; | 366 | 6.11M | } | 367 | 6.80M | /* If we have to move forward */ | 368 | 683k | else if (gic->last_location < index) { | 369 | 683k | MVM_string_gi_move_to(tc, &(gic->gi), index - gic->last_location - 1); | 370 | 683k | } | 371 | 683k | /* If we have to backtrack we need to reinitialize the grapheme iterator */ | 372 | 0 | else { | 373 | 0 | MVM_string_gi_cached_init(tc, gic, gic->string, index); | 374 | 0 | return gic->last_g; | 375 | 0 | } | 376 | 1.50M | gic->last_location = index; | 377 | 1.50M | return (gic->last_g = MVM_string_gi_get_grapheme(tc, &(gic->gi))); | 378 | 7.61M | } |
Unexecuted instantiation: P6bigint.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: MVMCallCapture.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: SCRef.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: MVMContext.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: P6opaque.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: MVMThread.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: HashAttrStore.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: Uninstantiable.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: P6num.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: P6int.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: MVMStaticFrame.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: MVMCompUnit.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: MVMOSHandle.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: MVMCode.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: bytecodedump.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: nativecall.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: ext.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: dll.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: coerce.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: num.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: loadbytecode.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: hll.c:MVM_string_gi_cached_get_grapheme ops.c:MVM_string_gi_cached_get_grapheme Line | Count | Source | 358 | 603k | MVM_STATIC_INLINE MVMGrapheme32 MVM_string_gi_cached_get_grapheme(MVMThreadContext *tc, MVMGraphemeIter_cached *gic, MVMint64 index) { | 359 | 603k | /* Most likely case is we are getting the next grapheme. When that happens | 360 | 603k | * we will go directly to the end. */ | 361 | 603k | if (index == gic->last_location + 1) { | 362 | 573k | } | 363 | 603k | /* Second most likely is getting the cached grapheme */ | 364 | 29.8k | else if (index == gic->last_location) { | 365 | 29.8k | return gic->last_g; | 366 | 29.8k | } | 367 | 29.8k | /* If we have to move forward */ | 368 | 0 | else if (gic->last_location < index) { | 369 | 0 | MVM_string_gi_move_to(tc, &(gic->gi), index - gic->last_location - 1); | 370 | 0 | } | 371 | 0 | /* If we have to backtrack we need to reinitialize the grapheme iterator */ | 372 | 0 | else { | 373 | 0 | MVM_string_gi_cached_init(tc, gic, gic->string, index); | 374 | 0 | return gic->last_g; | 375 | 0 | } | 376 | 573k | gic->last_location = index; | 377 | 573k | return (gic->last_g = MVM_string_gi_get_grapheme(tc, &(gic->gi))); | 378 | 603k | } |
Unexecuted instantiation: threads.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: nativecall_dyncall.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: validation.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: callstack.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: frame.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: bytecode.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: compunit.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: threadcontext.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: interp.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: exceptions.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: args.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: roots.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: syncfile.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: eventloop.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: io.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: debug.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: finalize.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: objectid.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: wb.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: gen2.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: collect.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: syncsocket.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: worklist.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: allocation.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: orchestrate.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: config.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: debugserver.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: regionalloc.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: fixedsizealloc.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: intcache.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: continuation.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: nfg.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: instrument.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: bigintops.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: shiftjis_codeindex.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: shiftjis.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: windows1252.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: utf16.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: latin1.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: normalize.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: unicode.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: profile.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: utf8_c8.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: utf8.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: parse_num.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: ascii.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: decode_stream.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: plugin.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: arg_guard.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: plan.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: stats.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: time.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: callsite.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: arch.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: emit.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: interface.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: linear_scan.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: tile.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: expr.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: compile.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: label.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: worker.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: mmap.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: moar.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: memmem32.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: random.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: sys.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: line_coverage.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: crossthreadwrite.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: telemeh.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: heapsnapshot.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: MVMAsyncTask.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: bootstrap.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: 6model.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: MVMStaticFrameSpesh.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: MVMSpeshLog.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: Decoder.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: MultiDimArray.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: NativeRef.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: CPPStruct.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: MVMNull.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: sc.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: ConcBlockingQueue.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: Semaphore.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: ConditionVariable.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: ReentrantMutex.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: CUnion.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: CStruct.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: CArray.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: CStr.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: CPointer.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: facts.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: iterator.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: lookup.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: osr.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: inline.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: threshold.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: log.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: deopt.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: dead_bb_elimination.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: optimize.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: NativeCall.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: manipulate.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: candidate.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: codegen.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: graph.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: dump.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: driver.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: compiler.c:MVM_string_gi_cached_get_grapheme Unexecuted instantiation: serialization.c:MVM_string_gi_cached_get_grapheme |