clang 22.0.0git
Macros | Typedefs | Functions
CIRGenExprComplex.cpp File Reference
#include "CIRGenBuilder.h"
#include "CIRGenFunction.h"
#include "clang/AST/StmtVisitor.h"

Go to the source code of this file.

Macros

#define HANDLEBINOP(OP)
 
#define HANDLE_BINOP(OP)
 

Typedefs

using CompoundFunc = mlir::Value(ComplexExprEmitter::*)(const ComplexExprEmitter::BinOpInfo &)
 

Functions

static const ComplexTypegetComplexType (QualType type)
 
static cir::ComplexRangeKind getComplexRangeAttr (LangOptions::ComplexRangeKind range)
 
static CompoundFunc getComplexOp (BinaryOperatorKind op)
 

Macro Definition Documentation

◆ HANDLE_BINOP

#define HANDLE_BINOP (   OP)
Value:
case BO_##OP: \
return emitBin##OP(emitBinOps(bo, promotionTy));

◆ HANDLEBINOP

#define HANDLEBINOP (   OP)
Value:
mlir::Value VisitBin##OP(const BinaryOperator *e) { \
QualType promotionTy = getPromotionType( \
e->getType(), e->getOpcode() == BinaryOperatorKind::BO_Div); \
mlir::Value result = emitBin##OP(emitBinOps(e, promotionTy)); \
if (!promotionTy.isNull()) \
result = cgf.emitUnPromotedValue(result, e->getType()); \
return result; \
}
A builtin binary operation expression such as "x + y" or "x <= y".
Definition: Expr.h:3974
Opcode getOpcode() const
Definition: Expr.h:4019
QualType getType() const
Definition: Expr.h:144
A (possibly-)qualified type.
Definition: TypeBase.h:937
bool isNull() const
Return true if this QualType doesn't point to a type yet.
Definition: TypeBase.h:1004

Definition at line 153 of file CIRGenExprComplex.cpp.

Typedef Documentation

◆ CompoundFunc

using CompoundFunc = mlir::Value (ComplexExprEmitter::*)(const ComplexExprEmitter::BinOpInfo &)

Definition at line 918 of file CIRGenExprComplex.cpp.

Function Documentation

◆ getComplexOp()

static CompoundFunc getComplexOp ( BinaryOperatorKind  op)
static

◆ getComplexRangeAttr()

static cir::ComplexRangeKind getComplexRangeAttr ( LangOptions::ComplexRangeKind  range)
static

Definition at line 821 of file CIRGenExprComplex.cpp.

◆ getComplexType()

static const ComplexType * getComplexType ( QualType  type)
static