aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/CIR
diff options
context:
space:
mode:
authorAmr Hesham <amr96@programmer.net>2025-08-30 18:18:32 +0200
committerGitHub <noreply@github.com>2025-08-30 18:18:32 +0200
commite78ac808d586ae0df8cba2394f2bc04ed61d03f9 (patch)
treea321bb104d37e0c2bc78e07e7d46577162174e4a /clang/lib/CIR
parent5a33bc54228456780c29a935775e16d1bd8723c3 (diff)
downloadllvm-e78ac808d586ae0df8cba2394f2bc04ed61d03f9.zip
llvm-e78ac808d586ae0df8cba2394f2bc04ed61d03f9.tar.gz
llvm-e78ac808d586ae0df8cba2394f2bc04ed61d03f9.tar.bz2
[CIR] Implement VAArgExpr for ComplexType (#156092)
This change adds support VAArgExpr for ComplexExpr Issue: https://github.com/llvm/llvm-project/issues/141365
Diffstat (limited to 'clang/lib/CIR')
-rw-r--r--clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp b/clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
index 5b282fa..cbdd525 100644
--- a/clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
+++ b/clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
@@ -182,6 +182,8 @@ public:
mlir::Value VisitBinDivAssign(const CompoundAssignOperator *e) {
return emitCompoundAssign(e, &ComplexExprEmitter::emitBinDiv);
}
+
+ mlir::Value VisitVAArgExpr(VAArgExpr *e);
};
} // namespace
@@ -597,6 +599,10 @@ mlir::Value ComplexExprEmitter::VisitUnaryNot(const UnaryOperator *e) {
return builder.createNot(op);
}
+mlir::Value ComplexExprEmitter::VisitVAArgExpr(VAArgExpr *e) {
+ return cgf.emitVAArg(e);
+}
+
mlir::Value ComplexExprEmitter::emitPromoted(const Expr *e,
QualType promotionTy) {
e = e->IgnoreParens();