struct CallArg

Declaration

struct CallArg { /* full declaration omitted */ };

Declared at: clang/lib/CodeGen/CGCall.h:214

Member Variables

private anonymous struct / union
private bool HasLV
private bool IsUsed
A data-flow flag to make sure getRValue and/or copyInto are not called twice for duplicated IR emission.
public clang::QualType Ty

Method Overview

  • public CallArg(clang::CodeGen::RValue rv, clang::QualType ty)
  • public CallArg(clang::CodeGen::LValue lv, clang::QualType ty)
  • public void copyInto(clang::CodeGen::CodeGenFunction & CGF, clang::CodeGen::Address A) const
  • public clang::CodeGen::LValue getKnownLValue() const
  • public clang::CodeGen::RValue getKnownRValue() const
  • public clang::CodeGen::RValue getRValue(clang::CodeGen::CodeGenFunction & CGF) const
  • public clang::QualType getType() const
  • public bool hasLValue() const
  • public bool isAggregate() const
  • public void setRValue(clang::CodeGen::RValue _RV)

Methods

CallArg(clang::CodeGen::RValue rv,
        clang::QualType ty)

Declared at: clang/lib/CodeGen/CGCall.h:228

Parameters

clang::CodeGen::RValue rv
clang::QualType ty

CallArg(clang::CodeGen::LValue lv,
        clang::QualType ty)

Declared at: clang/lib/CodeGen/CGCall.h:230

Parameters

clang::CodeGen::LValue lv
clang::QualType ty

void copyInto(
    clang::CodeGen::CodeGenFunction& CGF,
    clang::CodeGen::Address A) const

Declared at: clang/lib/CodeGen/CGCall.h:254

Parameters

clang::CodeGen::CodeGenFunction& CGF
clang::CodeGen::Address A

clang::CodeGen::LValue getKnownLValue() const

Declared at: clang/lib/CodeGen/CGCall.h:239

clang::CodeGen::RValue getKnownRValue() const

Declared at: clang/lib/CodeGen/CGCall.h:243

clang::CodeGen::RValue getRValue(
    clang::CodeGen::CodeGenFunction& CGF) const

Declared at: clang/lib/CodeGen/CGCall.h:237

Parameters

clang::CodeGen::CodeGenFunction& CGF

Returns

an independent RValue. If the CallArg contains an LValue, a temporary copy is returned.

clang::QualType getType() const

Declared at: clang/lib/CodeGen/CGCall.h:233

bool hasLValue() const

Declared at: clang/lib/CodeGen/CGCall.h:232

bool isAggregate() const

Declared at: clang/lib/CodeGen/CGCall.h:252

void setRValue(clang::CodeGen::RValue _RV)

Declared at: clang/lib/CodeGen/CGCall.h:247

Parameters

clang::CodeGen::RValue _RV