Lines Matching full:basic
240 // boundaries of basic blocks.
311 // insert them into a new basic block.
319 SANDBOX_DIE("Found a jump inside of a basic block");
331 // Add a new basic block to "basic_blocks". Also set "firstBlock", if it
337 "Only the very first basic block should have no "
352 // Textbook implementation of a basic block generator. All basic blocks
365 SANDBOX_DIE("Internal compiler error; cannot compute basic blocks");
369 // We reached a branch target. Start a new basic block (this means,
370 // flushing the previous basic block first).
375 // We reached a jump instruction, this completes our current basic
398 // Starting a new basic block.
402 // We found a non-jumping instruction, append it to current basic
407 // We reached a return statement, flush the current basic block and
418 // basic block and any blocks referenced by this block. This function can be
419 // used in a "less" comparator for the purpose of storing pointers to basic
421 // shared tail sequences of basic blocks.
432 // We compare the sequence of instructions in both basic
439 // both basic blocks, we know the relative ordering between the two blocks
500 // We enter all of our basic blocks into a set using the BasicBlock::Less()
504 // the basic blocks and update the pointer in the "blocks" map.
505 // Returns the number of unique basic blocks.
507 // a basic block. In practice, this is sufficiently rare that we don't
521 // instructions. Enter the basic block into the set of known
522 // basic blocks.
525 // We have previously seen another basic block that defines the same
537 // basic block. But we only traverse recursively the very first time we
563 // Textbook implementation of a toposort. We keep looking for basic blocks
568 // sorting algorithm terminates when there are no more basic blocks that have
581 // Inspect last instruction in the basic block. This is typically either a
609 // Our basic block is supposed to be followed by "last_insn->next",
623 // Proceed by picking an arbitrary node from the set of basic blocks that
638 // go forward. This means, iterating over the basic blocks in reverse makes
649 // Basic block ended in a jump instruction. We can now compute the
698 SANDBOX_DIE("Internal compiler error; invalid basic block encountered");
701 // Proceed to next basic block.
710 // Our basic blocks have been sorted and relative jump offsets have been
712 // basic blocks to be concatenated into a BPF program.