/home/travis/build/MoarVM/MoarVM/src/core/interp.h
Line | Count | Source (jump to first uncovered line) |
1 | | /* A GC sync point is a point where we can check if we're being signalled |
2 | | * to stop to do a GC run. This is placed at points where it is safe to |
3 | | * do such a thing, and hopefully so that it happens often enough; note |
4 | | * that every call down to the allocator is also a sync point, so this |
5 | | * really only means we need to do this enough to make sure tight native |
6 | | * loops trigger it. */ |
7 | | /* Don't use a MVM_load(&tc->gc_status) here for performance, it's okay |
8 | | * if the interrupt is delayed a bit. */ |
9 | | #define GC_SYNC_POINT(tc) \ |
10 | 41.5M | if (tc->gc_status) { \ |
11 | 0 | MVM_gc_enter_from_interrupt(tc); \ |
12 | 0 | } |
13 | | |
14 | | /* Different views of a register. */ |
15 | | union MVMRegister { |
16 | | MVMObject *o; |
17 | | MVMString *s; |
18 | | MVMint8 i8; |
19 | | MVMuint8 u8; |
20 | | MVMint16 i16; |
21 | | MVMuint16 u16; |
22 | | MVMint32 i32; |
23 | | MVMuint32 u32; |
24 | | MVMint64 i64; |
25 | | MVMuint64 u64; |
26 | | MVMnum32 n32; |
27 | | MVMnum64 n64; |
28 | | }; |
29 | | |
30 | | /* Most operands an operation will have. */ |
31 | 0 | #define MVM_MAX_OPERANDS 8 |
32 | | |
33 | | /* Kind of de-opt mark. */ |
34 | 1.28M | #define MVM_DEOPT_MARK_ONE 1 |
35 | 1.28M | #define MVM_DEOPT_MARK_ALL 2 |
36 | 1.28M | #define MVM_DEOPT_MARK_OSR 4 |
37 | | |
38 | | /* Information about an opcode. */ |
39 | | struct MVMOpInfo { |
40 | | MVMuint16 opcode; |
41 | | const char *name; |
42 | | char mark[2]; |
43 | | MVMuint16 num_operands; |
44 | | MVMuint8 pure; |
45 | | MVMuint8 deopt_point; |
46 | | MVMuint8 no_inline; |
47 | | MVMuint8 jittivity; |
48 | | MVMuint8 operands[MVM_MAX_OPERANDS]; |
49 | | }; |
50 | | |
51 | | /* Operand read/write/literal flags. */ |
52 | 9.38M | #define MVM_operand_literal 0 |
53 | 28.3M | #define MVM_operand_read_reg 1 |
54 | 36.7M | #define MVM_operand_write_reg 2 |
55 | 313k | #define MVM_operand_read_lex 3 |
56 | 312k | #define MVM_operand_write_lex 4 |
57 | 52.0M | #define MVM_operand_rw_mask 7 |
58 | | |
59 | | /* Register data types. */ |
60 | 2 | #define MVM_reg_int8 1 |
61 | 4.16M | #define MVM_reg_int16 2 |
62 | 1.12k | #define MVM_reg_int32 3 |
63 | 59.0M | #define MVM_reg_int64 4 |
64 | 0 | #define MVM_reg_num32 5 |
65 | 5.49k | #define MVM_reg_num64 6 |
66 | 7.59M | #define MVM_reg_str 7 |
67 | 84.2M | #define MVM_reg_obj 8 |
68 | 0 | #define MVM_reg_uint8 17 |
69 | 0 | #define MVM_reg_uint16 18 |
70 | 0 | #define MVM_reg_uint32 19 |
71 | 0 | #define MVM_reg_uint64 20 |
72 | | |
73 | | /* Operand data types. */ |
74 | 0 | #define MVM_operand_int8 (MVM_reg_int8 << 3) |
75 | 4.16M | #define MVM_operand_int16 (MVM_reg_int16 << 3) |
76 | 1.12k | #define MVM_operand_int32 (MVM_reg_int32 << 3) |
77 | 45.1k | #define MVM_operand_int64 (MVM_reg_int64 << 3) |
78 | 0 | #define MVM_operand_num32 (MVM_reg_num32 << 3) |
79 | 2.46k | #define MVM_operand_num64 (MVM_reg_num64 << 3) |
80 | 3.44M | #define MVM_operand_str (MVM_reg_str << 3) |
81 | 36.4k | #define MVM_operand_obj (MVM_reg_obj << 3) |
82 | 3.39M | #define MVM_operand_ins (9 << 3) |
83 | 16.6M | #define MVM_operand_type_var (10 << 3) |
84 | 1.36M | #define MVM_operand_coderef (12 << 3) |
85 | 1.11M | #define MVM_operand_callsite (13 << 3) |
86 | 130k | #define MVM_operand_spesh_slot (16 << 3) |
87 | 0 | #define MVM_operand_uint8 (MVM_reg_uint8 << 3) |
88 | 0 | #define MVM_operand_uint16 (MVM_reg_uint16 << 3) |
89 | 0 | #define MVM_operand_uint32 (MVM_reg_uint32 << 3) |
90 | 0 | #define MVM_operand_uint64 (MVM_reg_uint64 << 3) |
91 | 26.2M | #define MVM_operand_type_mask (31 << 3) |
92 | | |
93 | | /* Functions. */ |
94 | | void MVM_interp_run(MVMThreadContext *tc, void (*initial_invoke)(MVMThreadContext *, void *), void *invoke_data); |
95 | | MVM_PUBLIC void MVM_interp_enable_tracing(); |
96 | | |
97 | 822k | MVM_STATIC_INLINE MVMint64 MVM_BC_get_I64(const MVMuint8 *cur_op, int offset) { |
98 | 822k | const MVMuint8 *const where = cur_op + offset; |
99 | 822k | #ifdef MVM_CAN_UNALIGNED_INT64 |
100 | 822k | return *(MVMint64 *)where; |
101 | 822k | #else |
102 | | MVMint64 temp; |
103 | | memmove(&temp, where, sizeof(MVMint64)); |
104 | | return temp; |
105 | | #endif |
106 | 822k | } Unexecuted instantiation: MultiDimArray.c:MVM_BC_get_I64 Unexecuted instantiation: ReentrantMutex.c:MVM_BC_get_I64 Unexecuted instantiation: ConditionVariable.c:MVM_BC_get_I64 Unexecuted instantiation: Semaphore.c:MVM_BC_get_I64 Unexecuted instantiation: ConcBlockingQueue.c:MVM_BC_get_I64 Unexecuted instantiation: MVMAsyncTask.c:MVM_BC_get_I64 Unexecuted instantiation: MVMNull.c:MVM_BC_get_I64 Unexecuted instantiation: CPPStruct.c:MVM_BC_get_I64 Unexecuted instantiation: NativeRef.c:MVM_BC_get_I64 Unexecuted instantiation: CUnion.c:MVM_BC_get_I64 Unexecuted instantiation: Decoder.c:MVM_BC_get_I64 Unexecuted instantiation: 6model.c:MVM_BC_get_I64 Unexecuted instantiation: bootstrap.c:MVM_BC_get_I64 Unexecuted instantiation: sc.c:MVM_BC_get_I64 Unexecuted instantiation: serialization.c:MVM_BC_get_I64 Unexecuted instantiation: compiler.c:MVM_BC_get_I64 Unexecuted instantiation: driver.c:MVM_BC_get_I64 Unexecuted instantiation: dump.c:MVM_BC_get_I64 Unexecuted instantiation: MVMDLLSym.c:MVM_BC_get_I64 Unexecuted instantiation: MVMIter.c:MVM_BC_get_I64 Unexecuted instantiation: MVMContext.c:MVM_BC_get_I64 Unexecuted instantiation: SCRef.c:MVM_BC_get_I64 Unexecuted instantiation: Lexotic.c:MVM_BC_get_I64 Unexecuted instantiation: MVMCallCapture.c:MVM_BC_get_I64 Unexecuted instantiation: P6bigint.c:MVM_BC_get_I64 Unexecuted instantiation: NFA.c:MVM_BC_get_I64 Unexecuted instantiation: MVMException.c:MVM_BC_get_I64 Line | Count | Source | 97 | 5.83k | MVM_STATIC_INLINE MVMint64 MVM_BC_get_I64(const MVMuint8 *cur_op, int offset) { | 98 | 5.83k | const MVMuint8 *const where = cur_op + offset; | 99 | 5.83k | #ifdef MVM_CAN_UNALIGNED_INT64 | 100 | 5.83k | return *(MVMint64 *)where; | 101 | 5.83k | #else | 102 | | MVMint64 temp; | 103 | | memmove(&temp, where, sizeof(MVMint64)); | 104 | | return temp; | 105 | | #endif | 106 | 5.83k | } |
Unexecuted instantiation: MVMMultiCache.c:MVM_BC_get_I64 Unexecuted instantiation: MVMContinuation.c:MVM_BC_get_I64 Unexecuted instantiation: NativeCall.c:MVM_BC_get_I64 Unexecuted instantiation: CPointer.c:MVM_BC_get_I64 Unexecuted instantiation: CStr.c:MVM_BC_get_I64 Unexecuted instantiation: CArray.c:MVM_BC_get_I64 Unexecuted instantiation: CStruct.c:MVM_BC_get_I64 Unexecuted instantiation: heapsnapshot.c:MVM_BC_get_I64 Unexecuted instantiation: unicode.c:MVM_BC_get_I64 Unexecuted instantiation: normalize.c:MVM_BC_get_I64 Unexecuted instantiation: latin1.c:MVM_BC_get_I64 Unexecuted instantiation: utf16.c:MVM_BC_get_I64 Unexecuted instantiation: windows1252.c:MVM_BC_get_I64 Unexecuted instantiation: bigintops.c:MVM_BC_get_I64 Unexecuted instantiation: instrument.c:MVM_BC_get_I64 Unexecuted instantiation: profile.c:MVM_BC_get_I64 Unexecuted instantiation: nfg.c:MVM_BC_get_I64 Unexecuted instantiation: crossthreadwrite.c:MVM_BC_get_I64 Unexecuted instantiation: line_coverage.c:MVM_BC_get_I64 Unexecuted instantiation: moar.c:MVM_BC_get_I64 Unexecuted instantiation: mmap.c:MVM_BC_get_I64 Unexecuted instantiation: time.c:MVM_BC_get_I64 Unexecuted instantiation: sys.c:MVM_BC_get_I64 Unexecuted instantiation: emit_posix_x64.c:MVM_BC_get_I64 Unexecuted instantiation: callsite.c:MVM_BC_get_I64 Unexecuted instantiation: inline.c:MVM_BC_get_I64 Unexecuted instantiation: codegen.c:MVM_BC_get_I64 Unexecuted instantiation: candidate.c:MVM_BC_get_I64 Unexecuted instantiation: manipulate.c:MVM_BC_get_I64 Unexecuted instantiation: facts.c:MVM_BC_get_I64 Unexecuted instantiation: optimize.c:MVM_BC_get_I64 Unexecuted instantiation: deopt.c:MVM_BC_get_I64 Unexecuted instantiation: log.c:MVM_BC_get_I64 Unexecuted instantiation: threshold.c:MVM_BC_get_I64 Unexecuted instantiation: args.c:MVM_BC_get_I64 Unexecuted instantiation: osr.c:MVM_BC_get_I64 Unexecuted instantiation: lookup.c:MVM_BC_get_I64 Unexecuted instantiation: compile.c:MVM_BC_get_I64 Unexecuted instantiation: decode_stream.c:MVM_BC_get_I64 Unexecuted instantiation: ascii.c:MVM_BC_get_I64 Unexecuted instantiation: utf8.c:MVM_BC_get_I64 Unexecuted instantiation: utf8_c8.c:MVM_BC_get_I64 Unexecuted instantiation: orchestrate.c:MVM_BC_get_I64 Unexecuted instantiation: ext.c:MVM_BC_get_I64 Unexecuted instantiation: nativecall.c:MVM_BC_get_I64 Unexecuted instantiation: nativecall_dyncall.c:MVM_BC_get_I64 Unexecuted instantiation: continuation.c:MVM_BC_get_I64 Unexecuted instantiation: intcache.c:MVM_BC_get_I64 Unexecuted instantiation: fixedsizealloc.c:MVM_BC_get_I64 Unexecuted instantiation: regionalloc.c:MVM_BC_get_I64 Unexecuted instantiation: config.c:MVM_BC_get_I64 Unexecuted instantiation: dll.c:MVM_BC_get_I64 Unexecuted instantiation: allocation.c:MVM_BC_get_I64 Unexecuted instantiation: worklist.c:MVM_BC_get_I64 Unexecuted instantiation: roots.c:MVM_BC_get_I64 Unexecuted instantiation: collect.c:MVM_BC_get_I64 Unexecuted instantiation: gen2.c:MVM_BC_get_I64 Unexecuted instantiation: wb.c:MVM_BC_get_I64 Unexecuted instantiation: objectid.c:MVM_BC_get_I64 Unexecuted instantiation: finalize.c:MVM_BC_get_I64 validation.c:MVM_BC_get_I64 Line | Count | Source | 97 | 20.6k | MVM_STATIC_INLINE MVMint64 MVM_BC_get_I64(const MVMuint8 *cur_op, int offset) { | 98 | 20.6k | const MVMuint8 *const where = cur_op + offset; | 99 | 20.6k | #ifdef MVM_CAN_UNALIGNED_INT64 | 100 | 20.6k | return *(MVMint64 *)where; | 101 | 20.6k | #else | 102 | | MVMint64 temp; | 103 | | memmove(&temp, where, sizeof(MVMint64)); | 104 | | return temp; | 105 | | #endif | 106 | 20.6k | } |
Unexecuted instantiation: MVMThread.c:MVM_BC_get_I64 Unexecuted instantiation: exceptions.c:MVM_BC_get_I64 Line | Count | Source | 97 | 795k | MVM_STATIC_INLINE MVMint64 MVM_BC_get_I64(const MVMuint8 *cur_op, int offset) { | 98 | 795k | const MVMuint8 *const where = cur_op + offset; | 99 | 795k | #ifdef MVM_CAN_UNALIGNED_INT64 | 100 | 795k | return *(MVMint64 *)where; | 101 | 795k | #else | 102 | | MVMint64 temp; | 103 | | memmove(&temp, where, sizeof(MVMint64)); | 104 | | return temp; | 105 | | #endif | 106 | 795k | } |
Unexecuted instantiation: threadcontext.c:MVM_BC_get_I64 Unexecuted instantiation: compunit.c:MVM_BC_get_I64 Unexecuted instantiation: bytecode.c:MVM_BC_get_I64 Unexecuted instantiation: frame.c:MVM_BC_get_I64 Unexecuted instantiation: callstack.c:MVM_BC_get_I64 Unexecuted instantiation: HashAttrStore.c:MVM_BC_get_I64 Unexecuted instantiation: bytecodedump.c:MVM_BC_get_I64 Unexecuted instantiation: threads.c:MVM_BC_get_I64 Unexecuted instantiation: ops.c:MVM_BC_get_I64 Unexecuted instantiation: hll.c:MVM_BC_get_I64 Unexecuted instantiation: loadbytecode.c:MVM_BC_get_I64 Unexecuted instantiation: num.c:MVM_BC_get_I64 Unexecuted instantiation: coerce.c:MVM_BC_get_I64 Unexecuted instantiation: P6opaque.c:MVM_BC_get_I64 Unexecuted instantiation: parametric.c:MVM_BC_get_I64 Unexecuted instantiation: MVMString.c:MVM_BC_get_I64 Unexecuted instantiation: VMArray.c:MVM_BC_get_I64 Unexecuted instantiation: MVMHash.c:MVM_BC_get_I64 Unexecuted instantiation: MVMCFunction.c:MVM_BC_get_I64 Unexecuted instantiation: KnowHOWREPR.c:MVM_BC_get_I64 Unexecuted instantiation: KnowHOWAttributeREPR.c:MVM_BC_get_I64 Unexecuted instantiation: P6str.c:MVM_BC_get_I64 Unexecuted instantiation: io.c:MVM_BC_get_I64 Unexecuted instantiation: MVMCode.c:MVM_BC_get_I64 Unexecuted instantiation: MVMOSHandle.c:MVM_BC_get_I64 Unexecuted instantiation: MVMCompUnit.c:MVM_BC_get_I64 Unexecuted instantiation: MVMStaticFrame.c:MVM_BC_get_I64 Unexecuted instantiation: P6int.c:MVM_BC_get_I64 Unexecuted instantiation: P6num.c:MVM_BC_get_I64 Unexecuted instantiation: Uninstantiable.c:MVM_BC_get_I64 Unexecuted instantiation: debug.c:MVM_BC_get_I64 Unexecuted instantiation: reprconv.c:MVM_BC_get_I64 Unexecuted instantiation: containers.c:MVM_BC_get_I64 Unexecuted instantiation: eventloop.c:MVM_BC_get_I64 Unexecuted instantiation: syncfile.c:MVM_BC_get_I64 Unexecuted instantiation: syncstream.c:MVM_BC_get_I64 Unexecuted instantiation: syncpipe.c:MVM_BC_get_I64 Unexecuted instantiation: syncsocket.c:MVM_BC_get_I64 Unexecuted instantiation: fileops.c:MVM_BC_get_I64 Unexecuted instantiation: dirops.c:MVM_BC_get_I64 Unexecuted instantiation: procops.c:MVM_BC_get_I64 Unexecuted instantiation: timers.c:MVM_BC_get_I64 Unexecuted instantiation: filewatchers.c:MVM_BC_get_I64 Unexecuted instantiation: signals.c:MVM_BC_get_I64 Unexecuted instantiation: asyncsocket.c:MVM_BC_get_I64 Unexecuted instantiation: asyncsocketudp.c:MVM_BC_get_I64 Unexecuted instantiation: reprs.c:MVM_BC_get_I64 |
107 | | |
108 | 173k | MVM_STATIC_INLINE MVMnum64 MVM_BC_get_N64(const MVMuint8 *cur_op, int offset) { |
109 | 173k | const MVMuint8 *const where = cur_op + offset; |
110 | 173k | #ifdef MVM_CAN_UNALIGNED_NUM64 |
111 | 173k | return *(MVMnum64 *)where; |
112 | 173k | #else |
113 | | MVMnum64 temp; |
114 | | memmove(&temp, cur_op + offset, sizeof(MVMnum64)); |
115 | | return temp; |
116 | | #endif |
117 | 173k | } Unexecuted instantiation: CUnion.c:MVM_BC_get_N64 Unexecuted instantiation: ReentrantMutex.c:MVM_BC_get_N64 Unexecuted instantiation: ConditionVariable.c:MVM_BC_get_N64 Unexecuted instantiation: Semaphore.c:MVM_BC_get_N64 Unexecuted instantiation: ConcBlockingQueue.c:MVM_BC_get_N64 Unexecuted instantiation: MVMAsyncTask.c:MVM_BC_get_N64 Unexecuted instantiation: MVMNull.c:MVM_BC_get_N64 Unexecuted instantiation: CPPStruct.c:MVM_BC_get_N64 Unexecuted instantiation: NativeRef.c:MVM_BC_get_N64 Unexecuted instantiation: MultiDimArray.c:MVM_BC_get_N64 Unexecuted instantiation: Decoder.c:MVM_BC_get_N64 Unexecuted instantiation: 6model.c:MVM_BC_get_N64 Unexecuted instantiation: bootstrap.c:MVM_BC_get_N64 Unexecuted instantiation: sc.c:MVM_BC_get_N64 Unexecuted instantiation: serialization.c:MVM_BC_get_N64 Unexecuted instantiation: compiler.c:MVM_BC_get_N64 Unexecuted instantiation: driver.c:MVM_BC_get_N64 Unexecuted instantiation: MVMException.c:MVM_BC_get_N64 Unexecuted instantiation: MVMThread.c:MVM_BC_get_N64 Unexecuted instantiation: MVMIter.c:MVM_BC_get_N64 Unexecuted instantiation: MVMContext.c:MVM_BC_get_N64 Unexecuted instantiation: SCRef.c:MVM_BC_get_N64 Unexecuted instantiation: Lexotic.c:MVM_BC_get_N64 Unexecuted instantiation: MVMCallCapture.c:MVM_BC_get_N64 Unexecuted instantiation: P6bigint.c:MVM_BC_get_N64 Unexecuted instantiation: NFA.c:MVM_BC_get_N64 Unexecuted instantiation: CStruct.c:MVM_BC_get_N64 Unexecuted instantiation: MVMDLLSym.c:MVM_BC_get_N64 Unexecuted instantiation: MVMMultiCache.c:MVM_BC_get_N64 Unexecuted instantiation: MVMContinuation.c:MVM_BC_get_N64 Unexecuted instantiation: NativeCall.c:MVM_BC_get_N64 Unexecuted instantiation: CPointer.c:MVM_BC_get_N64 Unexecuted instantiation: CStr.c:MVM_BC_get_N64 Unexecuted instantiation: CArray.c:MVM_BC_get_N64 Unexecuted instantiation: profile.c:MVM_BC_get_N64 Unexecuted instantiation: nfg.c:MVM_BC_get_N64 Unexecuted instantiation: unicode.c:MVM_BC_get_N64 Unexecuted instantiation: normalize.c:MVM_BC_get_N64 Unexecuted instantiation: latin1.c:MVM_BC_get_N64 Unexecuted instantiation: utf16.c:MVM_BC_get_N64 Unexecuted instantiation: windows1252.c:MVM_BC_get_N64 Unexecuted instantiation: bigintops.c:MVM_BC_get_N64 Unexecuted instantiation: instrument.c:MVM_BC_get_N64 Unexecuted instantiation: utf8_c8.c:MVM_BC_get_N64 Unexecuted instantiation: heapsnapshot.c:MVM_BC_get_N64 Unexecuted instantiation: crossthreadwrite.c:MVM_BC_get_N64 Unexecuted instantiation: line_coverage.c:MVM_BC_get_N64 Unexecuted instantiation: moar.c:MVM_BC_get_N64 Unexecuted instantiation: mmap.c:MVM_BC_get_N64 Unexecuted instantiation: time.c:MVM_BC_get_N64 Unexecuted instantiation: sys.c:MVM_BC_get_N64 Unexecuted instantiation: emit_posix_x64.c:MVM_BC_get_N64 Unexecuted instantiation: threshold.c:MVM_BC_get_N64 Line | Count | Source | 108 | 6 | MVM_STATIC_INLINE MVMnum64 MVM_BC_get_N64(const MVMuint8 *cur_op, int offset) { | 109 | 6 | const MVMuint8 *const where = cur_op + offset; | 110 | 6 | #ifdef MVM_CAN_UNALIGNED_NUM64 | 111 | 6 | return *(MVMnum64 *)where; | 112 | 6 | #else | 113 | | MVMnum64 temp; | 114 | | memmove(&temp, cur_op + offset, sizeof(MVMnum64)); | 115 | | return temp; | 116 | | #endif | 117 | 6 | } |
Unexecuted instantiation: codegen.c:MVM_BC_get_N64 Unexecuted instantiation: candidate.c:MVM_BC_get_N64 Unexecuted instantiation: manipulate.c:MVM_BC_get_N64 Unexecuted instantiation: facts.c:MVM_BC_get_N64 Unexecuted instantiation: optimize.c:MVM_BC_get_N64 Unexecuted instantiation: deopt.c:MVM_BC_get_N64 Unexecuted instantiation: log.c:MVM_BC_get_N64 Unexecuted instantiation: dump.c:MVM_BC_get_N64 Unexecuted instantiation: inline.c:MVM_BC_get_N64 Unexecuted instantiation: osr.c:MVM_BC_get_N64 Unexecuted instantiation: lookup.c:MVM_BC_get_N64 Unexecuted instantiation: compile.c:MVM_BC_get_N64 Unexecuted instantiation: decode_stream.c:MVM_BC_get_N64 Unexecuted instantiation: ascii.c:MVM_BC_get_N64 Unexecuted instantiation: utf8.c:MVM_BC_get_N64 Unexecuted instantiation: config.c:MVM_BC_get_N64 Unexecuted instantiation: dll.c:MVM_BC_get_N64 Unexecuted instantiation: ext.c:MVM_BC_get_N64 Unexecuted instantiation: nativecall.c:MVM_BC_get_N64 Unexecuted instantiation: nativecall_dyncall.c:MVM_BC_get_N64 Unexecuted instantiation: continuation.c:MVM_BC_get_N64 Unexecuted instantiation: intcache.c:MVM_BC_get_N64 Unexecuted instantiation: fixedsizealloc.c:MVM_BC_get_N64 Unexecuted instantiation: regionalloc.c:MVM_BC_get_N64 Unexecuted instantiation: coerce.c:MVM_BC_get_N64 Unexecuted instantiation: orchestrate.c:MVM_BC_get_N64 Unexecuted instantiation: allocation.c:MVM_BC_get_N64 Unexecuted instantiation: worklist.c:MVM_BC_get_N64 Unexecuted instantiation: roots.c:MVM_BC_get_N64 Unexecuted instantiation: collect.c:MVM_BC_get_N64 Unexecuted instantiation: gen2.c:MVM_BC_get_N64 Unexecuted instantiation: wb.c:MVM_BC_get_N64 Unexecuted instantiation: objectid.c:MVM_BC_get_N64 Unexecuted instantiation: callstack.c:MVM_BC_get_N64 Unexecuted instantiation: callsite.c:MVM_BC_get_N64 Unexecuted instantiation: args.c:MVM_BC_get_N64 Unexecuted instantiation: exceptions.c:MVM_BC_get_N64 Line | Count | Source | 108 | 173k | MVM_STATIC_INLINE MVMnum64 MVM_BC_get_N64(const MVMuint8 *cur_op, int offset) { | 109 | 173k | const MVMuint8 *const where = cur_op + offset; | 110 | 173k | #ifdef MVM_CAN_UNALIGNED_NUM64 | 111 | 173k | return *(MVMnum64 *)where; | 112 | 173k | #else | 113 | | MVMnum64 temp; | 114 | | memmove(&temp, cur_op + offset, sizeof(MVMnum64)); | 115 | | return temp; | 116 | | #endif | 117 | 173k | } |
Unexecuted instantiation: threadcontext.c:MVM_BC_get_N64 Unexecuted instantiation: compunit.c:MVM_BC_get_N64 Unexecuted instantiation: bytecode.c:MVM_BC_get_N64 Unexecuted instantiation: frame.c:MVM_BC_get_N64 Unexecuted instantiation: finalize.c:MVM_BC_get_N64 Unexecuted instantiation: validation.c:MVM_BC_get_N64 Unexecuted instantiation: bytecodedump.c:MVM_BC_get_N64 Unexecuted instantiation: threads.c:MVM_BC_get_N64 Unexecuted instantiation: ops.c:MVM_BC_get_N64 Unexecuted instantiation: hll.c:MVM_BC_get_N64 Unexecuted instantiation: loadbytecode.c:MVM_BC_get_N64 Unexecuted instantiation: num.c:MVM_BC_get_N64 Unexecuted instantiation: P6str.c:MVM_BC_get_N64 Unexecuted instantiation: containers.c:MVM_BC_get_N64 Unexecuted instantiation: parametric.c:MVM_BC_get_N64 Unexecuted instantiation: MVMString.c:MVM_BC_get_N64 Unexecuted instantiation: VMArray.c:MVM_BC_get_N64 Unexecuted instantiation: MVMHash.c:MVM_BC_get_N64 Unexecuted instantiation: MVMCFunction.c:MVM_BC_get_N64 Unexecuted instantiation: KnowHOWREPR.c:MVM_BC_get_N64 Unexecuted instantiation: KnowHOWAttributeREPR.c:MVM_BC_get_N64 Unexecuted instantiation: reprconv.c:MVM_BC_get_N64 Unexecuted instantiation: P6opaque.c:MVM_BC_get_N64 Unexecuted instantiation: MVMCode.c:MVM_BC_get_N64 Unexecuted instantiation: MVMOSHandle.c:MVM_BC_get_N64 Unexecuted instantiation: MVMCompUnit.c:MVM_BC_get_N64 Unexecuted instantiation: MVMStaticFrame.c:MVM_BC_get_N64 Unexecuted instantiation: P6int.c:MVM_BC_get_N64 Unexecuted instantiation: P6num.c:MVM_BC_get_N64 Unexecuted instantiation: Uninstantiable.c:MVM_BC_get_N64 Unexecuted instantiation: dirops.c:MVM_BC_get_N64 Unexecuted instantiation: debug.c:MVM_BC_get_N64 Unexecuted instantiation: io.c:MVM_BC_get_N64 Unexecuted instantiation: eventloop.c:MVM_BC_get_N64 Unexecuted instantiation: syncfile.c:MVM_BC_get_N64 Unexecuted instantiation: syncstream.c:MVM_BC_get_N64 Unexecuted instantiation: syncpipe.c:MVM_BC_get_N64 Unexecuted instantiation: syncsocket.c:MVM_BC_get_N64 Unexecuted instantiation: fileops.c:MVM_BC_get_N64 Unexecuted instantiation: HashAttrStore.c:MVM_BC_get_N64 Unexecuted instantiation: procops.c:MVM_BC_get_N64 Unexecuted instantiation: timers.c:MVM_BC_get_N64 Unexecuted instantiation: filewatchers.c:MVM_BC_get_N64 Unexecuted instantiation: signals.c:MVM_BC_get_N64 Unexecuted instantiation: asyncsocket.c:MVM_BC_get_N64 Unexecuted instantiation: asyncsocketudp.c:MVM_BC_get_N64 Unexecuted instantiation: reprs.c:MVM_BC_get_N64 |