Lines Matching +full:cell +full:- +full:value

1 //===- BitTracker.h ---------------------------------------------*- C++ -*-===//
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7 //===----------------------------------------------------------------------===//
150 // Value that a single bit can take. This is outside of the context of
151 // any register, it is more of an abstraction of the two-element set of
153 // indicates that this bit takes the same value as the bit described by
160 Ref // Bit value same as the one described in RefI.
161 // Conceptually, there is no explicit "bottom" value: the lattice's
163 // of registers, could be read as "this value of this bit is defined by
168 // This makes the value lattice different for each virtual register
174 // In practice there is a special case for values that are not associa-
175 // ted with any specific virtual register. An example would be a value
177 // value obtained in some computation (such as instruction evaluation).
181 // What is worthy of notice is that in value V (that is a "ref"), as long
183 // one in which V will be contained. If the RefI.Pos refers to the posi-
188 // not possible. Any value V that is a "ref", and whose RefI.Reg is 0
222 // This "meet" function will update the value of the "*this" object with
223 // the newly calculated one, and return "true" if the value of *this has
225 // To prove that it satisfies the conditions (1)-(5), it is sufficient
238 // At this point, we know that the value of "this" will change. in meet()
252 // Create a reference to the bit value V.
318 RegisterCell extract(const BitMask &M) const; // Returns a new cell.
330 // Replace the ref-to-reg-0 bit values with the given register.
333 // Generate a "ref" cell for the corresponding register. In the resulting
334 // cell each bit will be described as being the same as the corresponding
335 // bit in register Reg (i.e. the cell is "defined" by register Reg).
337 // Generate a "top" cell of given size.
339 // Generate a cell that is a "ref" to another cell.
360 return F->second; in lookup()
388 // A class to evaluate target's instructions and update the cell maps.
404 // generate a ref for a cell corresponding to a register reference.
411 // Check if a cell is an immediate value (i.e. all bits are either 0 or 1).
413 // Convert cell to an immediate value.
416 // Generate cell from an immediate value.
450 // XTR R,b,e: extract bits from A1 starting at bit b, ending at e-1.
456 // User-provided functions for individual targets:
458 // Return a sub-register mask that indicates which bits in Reg belong
460 // the super-register, and have the same ordering in the sub-register
461 // as in the super-register. It is valid to call this function with
468 // Evaluate a non-branching machine instruction, given the cell map with
473 // Evaluate a branch, given the cell map with the input values. Fill out
475 // whether the branch could fall-through. Return "true" if this information