| 
    MLIR 22.0.0git
    
   | 
 
This class represents an argument of a Block. More...
#include "mlir/IR/Value.h"
Public Member Functions | |
| Block * | getOwner () const | 
| Returns the block that owns this argument.   | |
| unsigned | getArgNumber () const | 
| Returns the number of this argument.   | |
| Location | getLoc () const | 
| Return the location for this argument.   | |
| void | setLoc (Location loc) | 
| constexpr | Value (detail::ValueImpl *impl=nullptr) | 
| Public Member Functions inherited from mlir::Value | |
| constexpr | Value (detail::ValueImpl *impl=nullptr) | 
| operator bool () const | |
| bool | operator== (const Value &other) const | 
| bool | operator!= (const Value &other) const | 
| Type | getType () const | 
| Return the type of this value.   | |
| MLIRContext * | getContext () const | 
| Utility to get the associated MLIRContext that this value is defined in.   | |
| void | setType (Type newType) | 
| Mutate the type of this Value to be of the specified type.   | |
| Operation * | getDefiningOp () const | 
| If this value is the result of an operation, return the operation that defines it.   | |
| template<typename OpTy> | |
| OpTy | getDefiningOp () const | 
| If this value is the result of an operation of type OpTy, return the operation that defines it.   | |
| Location | getLoc () const | 
| Return the location of this value.   | |
| void | setLoc (Location loc) | 
| Region * | getParentRegion () | 
| Return the Region in which this Value is defined.   | |
| Block * | getParentBlock () | 
| Return the Block in which this Value is defined.   | |
| void | dropAllUses () | 
| Drop all uses of this object from their respective owners.   | |
| void | replaceAllUsesWith (Value newValue) | 
| Replace all uses of 'this' value with the new value, updating anything in the IR that uses 'this' to use the other value instead.   | |
| void | replaceAllUsesExcept (Value newValue, const SmallPtrSetImpl< Operation * > &exceptions) | 
| Replace all uses of 'this' value with 'newValue', updating anything in the IR that uses 'this' to use the other value instead except if the user is listed in 'exceptions' .   | |
| void | replaceAllUsesExcept (Value newValue, Operation *exceptedUser) | 
| Replace all uses of 'this' value with 'newValue', updating anything in the IR that uses 'this' to use the other value instead except if the user is 'exceptedUser'.   | |
| void | replaceUsesWithIf (Value newValue, function_ref< bool(OpOperand &)> shouldReplace) | 
| Replace all uses of 'this' value with 'newValue' if the given callback returns true.   | |
| bool | isUsedOutsideOfBlock (Block *block) const | 
| Returns true if the value is used outside of the given block.   | |
| void | shuffleUseList (ArrayRef< unsigned > indices) | 
| Shuffle the use list order according to the provided indices.   | |
| use_iterator | use_begin () const | 
| use_iterator | use_end () const | 
| use_range | getUses () const | 
| Returns a range of all uses, which is useful for iterating over all uses.   | |
| unsigned | getNumUses () const | 
| This method computes the number of uses of this Value.   | |
| bool | hasOneUse () const | 
| Returns true if this value has exactly one use.   | |
| bool | hasNUses (unsigned n) const | 
| Return true if this Value has exactly n uses.   | |
| bool | hasNUsesOrMore (unsigned n) const | 
| Return true if this value has n uses or more.   | |
| bool | use_empty () const | 
| Returns true if this value has no uses.   | |
| user_iterator | user_begin () const | 
| user_iterator | user_end () const | 
| user_range | getUsers () const | 
| void | print (raw_ostream &os) const | 
| void | print (raw_ostream &os, const OpPrintingFlags &flags) const | 
| void | print (raw_ostream &os, AsmState &state) const | 
| void | dump () const | 
| void | printAsOperand (raw_ostream &os, AsmState &state) const | 
| Print this value as if it were an operand.   | |
| void | printAsOperand (raw_ostream &os, const OpPrintingFlags &flags) const | 
| void * | getAsOpaquePointer () const | 
| Methods for supporting PointerLikeTypeTraits.   | |
| detail::ValueImpl * | getImpl () const | 
| friend::llvm::hash_code | hash_value (Value arg) | 
Static Public Member Functions | |
| static bool | classof (Value value) | 
| Static Public Member Functions inherited from mlir::Value | |
| static Value | getFromOpaquePointer (const void *pointer) | 
Additional Inherited Members | |
| Public Types inherited from mlir::Value | |
| using | use_iterator = ValueUseIterator<OpOperand> | 
| This class implements an iterator over the uses of a value.   | |
| using | use_range = iterator_range<use_iterator> | 
| using | user_iterator = ValueUserIterator<use_iterator, OpOperand> | 
| using | user_range = iterator_range<user_iterator> | 
| Protected Attributes inherited from mlir::Value | |
| detail::ValueImpl * | impl | 
| A pointer to the internal implementation of the value.   | |
Definition at line 313 of file Value.h.
References mlir::Value::getImpl().
      
  | 
  inline | 
Returns the number of this argument.
Definition at line 321 of file Value.h.
References mlir::Value::getImpl().
Referenced by mlir::AsmParserState::addDefinition(), mlir::AsmParserState::addUses(), collapseBranch(), collectUnderlyingAddressValues(), mlir::Block::eraseArguments(), getBlockPredecessorOperands(), mlir::bufferization::detail::getCallerOpOperands(), mlir::bufferization::func_ext::FuncOpInterface::isWritable(), legalizeBlockArguments(), mlir::Value::print(), mlir::Value::print(), removeBufferizationAttributes(), mlir::scf::replaceAndCastForOpIterArg(), vectorizeAsLinalgGeneric(), and mlir::transform::detail::verifyPossibleTopLevelTransformOpTrait().
      
  | 
  inline | 
Return the location for this argument.
Definition at line 324 of file Value.h.
References mlir::Value::getImpl().
Referenced by mlir::detail::ConversionPatternRewriterImpl::applySignatureConversion(), and legalizeBlockArguments().
      
  | 
  inline | 
Returns the block that owns this argument.
Definition at line 318 of file Value.h.
References mlir::Value::getImpl().
Referenced by mlir::AsmParserState::addDefinition(), mlir::AsmParserState::addUses(), buildPackingLoopNestImpl(), collapseBranch(), collectUnderlyingAddressValues(), mlir::bufferization::OpWithUnstructuredControlFlowBufferizableOpInterfaceExternalModel< ConcreteModel, ConcreteOp >::getAliasingBranchOpOperands(), getBlockPredecessorOperands(), mlir::bufferization::detail::getCallerOpOperands(), mlir::impl::LinalgDetensorizePassBase< DerivedT >::getDependentDialects(), hoistSubsetAtIterArg(), mlir::bufferization::func_ext::FuncOpInterface::isWritable(), and removeBufferizationAttributes().
Definition at line 325 of file Value.h.
References mlir::Value::getImpl().
      
  | 
  inlineconstexpr |