MCPcopy Create free account
hub / github.com/WebAssembly/wabt / pop_match

Method pop_match

src/binary-reader-ir.cc:64–90  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

62 }
63
64 std::unique_ptr<CodeMetadataExpr> pop_match(Func* f, Offset offset) {
65 std::unique_ptr<CodeMetadataExpr> ret;
66 if (entries.empty()) {
67 return ret;
68 }
69
70 auto& current_entry = entries.front();
71
72 if (current_entry.func != f)
73 return ret;
74 if (current_entry.func_queue.empty()) {
75 entries.pop_front();
76 return ret;
77 }
78
79 auto& current_metadata = current_entry.func_queue.front();
80 if (current_metadata->loc.offset + current_entry.func->loc.offset !=
81 offset) {
82 return ret;
83 }
84
85 current_metadata->loc = Location(offset);
86 ret = std::move(current_metadata);
87 current_entry.func_queue.pop_front();
88
89 return ret;
90 }
91};
92
93class BinaryReaderIR : public BinaryReaderNop {

Callers 1

OnOpcodeMethod · 0.80

Calls 4

LocationClass · 0.85
frontMethod · 0.80
emptyMethod · 0.45
pop_frontMethod · 0.45

Tested by

no test coverage detected