class BinOpInit

Declaration

class BinOpInit : public OpInit, public Node { /* full declaration omitted */ };

Description

!op (X, Y) - Combine two inits.

Declared at: llvm/include/llvm/TableGen/Record.h:834

Inherits from: OpInit, FoldingSetBase::Node

Member Variables

private llvm::Init* LHS
private llvm::Init* RHS

Inherited from Init:

protected Opc

Method Overview

  • private BinOpInit(llvm::BinOpInit::BinaryOp opc, llvm::Init * lhs, llvm::Init * rhs, llvm::RecTy * Type)
  • public BinOpInit(const llvm::BinOpInit &)
  • public llvm::Init * Fold(llvm::Record * CurRec) const
  • public void Profile(llvm::FoldingSetNodeID & ID) const
  • public static bool classof(const llvm::Init * I)
  • public llvm::OpInit * clone(ArrayRef<llvm::Init *> Operands) const
  • public static llvm::BinOpInit * get(llvm::BinOpInit::BinaryOp opc, llvm::Init * lhs, llvm::Init * rhs, llvm::RecTy * Type)
  • public std::string getAsString() const
  • public llvm::Init * getLHS() const
  • public static llvm::Init * getListConcat(llvm::TypedInit * lhs, llvm::Init * rhs)
  • public unsigned int getNumOperands() const
  • public llvm::BinOpInit::BinaryOp getOpcode() const
  • public llvm::Init * getOperand(unsigned int i) const
  • public llvm::Init * getRHS() const
  • public static llvm::Init * getStrConcat(llvm::Init * lhs, llvm::Init * rhs)
  • public llvm::Init * resolveReferences(llvm::Resolver & R) const

Inherited from FoldingSetBase::Node:

Inherited from OpInit:

Inherited from TypedInit:

Inherited from Init:

Methods

BinOpInit(llvm::BinOpInit::BinaryOp opc,
          llvm::Init* lhs,
          llvm::Init* rhs,
          llvm::RecTy* Type)

Declared at: llvm/include/llvm/TableGen/Record.h:843

Parameters

llvm::BinOpInit::BinaryOp opc
llvm::Init* lhs
llvm::Init* rhs
llvm::RecTy* Type

BinOpInit(const llvm::BinOpInit&)

Declared at: llvm/include/llvm/TableGen/Record.h:847

Parameters

const llvm::BinOpInit&

llvm::Init* Fold(llvm::Record* CurRec) const

Declared at: llvm/include/llvm/TableGen/Record.h:883

Parameters

llvm::Record* CurRec

void Profile(llvm::FoldingSetNodeID& ID) const

Declared at: llvm/include/llvm/TableGen/Record.h:859

Parameters

llvm::FoldingSetNodeID& ID

static bool classof(const llvm::Init* I)

Declared at: llvm/include/llvm/TableGen/Record.h:850

Parameters

const llvm::Init* I

llvm::OpInit* clone(
    ArrayRef<llvm::Init*> Operands) const

Declared at: llvm/include/llvm/TableGen/Record.h:862

Parameters

ArrayRef<llvm::Init*> Operands

static llvm::BinOpInit* get(
    llvm::BinOpInit::BinaryOp opc,
    llvm::Init* lhs,
    llvm::Init* rhs,
    llvm::RecTy* Type)

Declared at: llvm/include/llvm/TableGen/Record.h:854

Parameters

llvm::BinOpInit::BinaryOp opc
llvm::Init* lhs
llvm::Init* rhs
llvm::RecTy* Type

std::string getAsString() const

Description

Convert this value to a literal form.

Declared at: llvm/include/llvm/TableGen/Record.h:887

llvm::Init* getLHS() const

Declared at: llvm/include/llvm/TableGen/Record.h:878

static llvm::Init* getListConcat(
    llvm::TypedInit* lhs,
    llvm::Init* rhs)

Declared at: llvm/include/llvm/TableGen/Record.h:857

Parameters

llvm::TypedInit* lhs
llvm::Init* rhs

unsigned int getNumOperands() const

Declared at: llvm/include/llvm/TableGen/Record.h:868

llvm::BinOpInit::BinaryOp getOpcode() const

Declared at: llvm/include/llvm/TableGen/Record.h:877

llvm::Init* getOperand(unsigned int i) const

Declared at: llvm/include/llvm/TableGen/Record.h:869

Parameters

unsigned int i

llvm::Init* getRHS() const

Declared at: llvm/include/llvm/TableGen/Record.h:879

static llvm::Init* getStrConcat(llvm::Init* lhs,
                                llvm::Init* rhs)

Declared at: llvm/include/llvm/TableGen/Record.h:856

Parameters

llvm::Init* lhs
llvm::Init* rhs

llvm::Init* resolveReferences(
    llvm::Resolver& R) const

Description

This function is used by classes that refer to other variables which may not be defined at the time the expression is formed. If a value is set for the variable later, this method will be called on users of the value to allow the value to propagate out.

Declared at: llvm/include/llvm/TableGen/Record.h:885

Parameters

llvm::Resolver& R