#include "CGOpenMPRuntime.h"
#include "CodeGenFunction.h"
#include "CodeGenModule.h"
#include "ConstantEmitter.h"
#include "clang/AST/StmtVisitor.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/MDBuilder.h"
#include "llvm/IR/Metadata.h"
#include <algorithm>
Go to the source code of this file.
|
| llvm |
| Diagnostic wrappers for TextAPI types for error reporting.
|
|
◆ HANDLE_BINOP
#define HANDLE_BINOP |
( |
|
OP | ) |
|
Value: case BO_##OP: \
return EmitBin##OP(EmitBinOps(BO, PromotionType));
◆ HANDLEBINOP
#define HANDLEBINOP |
( |
|
OP | ) |
|
Value:
QualType promotionTy = getPromotionType( \
(E->
getOpcode() == BinaryOperatorKind::BO_Div) ?
true :
false); \
ComplexPairTy result = EmitBin##OP(EmitBinOps(E, promotionTy)); \
if (!promotionTy.isNull()) \
result = CGF.EmitUnPromotedValue(result, E->
getType()); \
return result; \
}
CodeGenFunction::ComplexPairTy ComplexPairTy
A builtin binary operation expression such as "x + y" or "x <= y".
Definition at line 347 of file CGExprComplex.cpp.
◆ ComplexPairTy
◆ CompoundFunc
typedef ComplexPairTy(ComplexExprEmitter::* CompoundFunc) (const ComplexExprEmitter::BinOpInfo &) |
◆ EmitllvmFAbs()
static llvm::Value* EmitllvmFAbs |
( |
CodeGenFunction & |
CGF, |
|
|
llvm::Value * |
Value |
|
) |
| |
|
static |
◆ getComplexMultiplyLibCallName()
static StringRef getComplexMultiplyLibCallName |
( |
llvm::Type * |
Ty | ) |
|
|
static |
Lookup the libcall name for a given floating point type complex multiply.
Definition at line 788 of file CGExprComplex.cpp.
◆ getComplexOp()
◆ getComplexType()