Lines Matching refs:Node
52 const CodeGen::Node CodeGen::kNullNode;
60 CodeGen::Program CodeGen::Compile(CodeGen::Node head) {
64 CodeGen::Node CodeGen::MakeInstruction(uint16_t code,
66 Node jt,
67 Node jf) {
71 CodeGen::Node* node = &res.first->second;
73 *node = AppendInstruction(code, k, jt, jf);
75 return *node;
78 CodeGen::Node CodeGen::AppendInstruction(uint16_t code,
80 Node jt,
81 Node jf) {
106 CodeGen::Node CodeGen::WithinRange(Node target, size_t range) {
118 Node jump = Append(BPF_JMP | BPF_JA, Offset(target), 0, 0);
123 CodeGen::Node CodeGen::Append(uint16_t code, uint32_t k, size_t jt, size_t jf) {
135 Node res = program_.size();
142 size_t CodeGen::Offset(Node target) const {
143 CHECK_LT(target, program_.size()) << "Bogus offset target node";