[llvm-branch-commits] [clang] [CIR] Upstream AddressSpace casting support (PR #161212)
via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Mon Sep 29 08:09:27 PDT 2025
github-actions[bot] wrote:
<!--LLVM CODE FORMAT COMMENT: {clang-format}-->
:warning: C/C++ code formatter, clang-format found issues in your code. :warning:
<details>
<summary>
You can test this locally with the following command:
</summary>
``````````bash
git-clang-format --diff origin/main HEAD --extensions cpp,h -- clang/test/CIR/address-space-conversion.cpp clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h clang/include/clang/CIR/Dialect/IR/CIRTypes.h clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp clang/lib/CIR/CodeGen/CIRGenExpr.cpp clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp clang/lib/CIR/CodeGen/CIRGenFunction.h clang/lib/CIR/CodeGen/CIRGenModule.cpp clang/lib/CIR/CodeGen/CIRGenModule.h clang/lib/CIR/CodeGen/CIRGenTypes.cpp clang/lib/CIR/CodeGen/TargetInfo.cpp clang/lib/CIR/CodeGen/TargetInfo.h
``````````
:warning:
The reproduction instructions above might return results for more than one PR
in a stack if you are using a stacked PR workflow. You can limit the results by
changing `origin/main` to the base branch/commit you want to compare against.
:warning:
</details>
<details>
<summary>
View the diff from clang-format here.
</summary>
``````````diff
diff --git a/clang/include/clang/CIR/Dialect/IR/CIRTypes.h b/clang/include/clang/CIR/Dialect/IR/CIRTypes.h
index 2f4191091..6a2b02ce4 100644
--- a/clang/include/clang/CIR/Dialect/IR/CIRTypes.h
+++ b/clang/include/clang/CIR/Dialect/IR/CIRTypes.h
@@ -19,8 +19,6 @@
#include "clang/Basic/AddressSpaces.h"
#include "clang/CIR/Dialect/IR/CIROpsEnums.h"
#include "clang/CIR/Interfaces/CIRTypeInterfaces.h"
-#include "clang/CIR/Dialect/IR/CIROpsEnums.h"
-#include "clang/Basic/AddressSpaces.h"
namespace cir {
diff --git a/clang/lib/CIR/CodeGen/CIRGenExpr.cpp b/clang/lib/CIR/CodeGen/CIRGenExpr.cpp
index 588f51be1..f65d502a1 100644
--- a/clang/lib/CIR/CodeGen/CIRGenExpr.cpp
+++ b/clang/lib/CIR/CodeGen/CIRGenExpr.cpp
@@ -1191,7 +1191,7 @@ LValue CIRGenFunction::emitCastLValue(const CastExpr *e) {
case CK_ToUnion:
case CK_BaseToDerived:
case CK_AddressSpaceConversion: {
- LValue lv = emitLValue(e->getSubExpr());
+ LValue lv = emitLValue(e->getSubExpr());
QualType destTy = getContext().getPointerType(e->getType());
cir::AddressSpace srcAS =
cir::toCIRAddressSpace(e->getSubExpr()->getType().getAddressSpace());
diff --git a/clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp b/clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
index ee9be0c9e..48ffaf977 100644
--- a/clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
+++ b/clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
@@ -1863,7 +1863,7 @@ mlir::Value ScalarExprEmitter::VisitCastExpr(CastExpr *ce) {
return cgf.getBuilder().createBitcast(cgf.getLoc(subExpr->getSourceRange()),
src, dstTy);
}
- case CK_AddressSpaceConversion: {
+ case CK_AddressSpaceConversion: {
Expr::EvalResult result;
if (subExpr->EvaluateAsRValue(result, cgf.getContext()) &&
result.Val.isNullPointer()) {
@@ -1872,7 +1872,8 @@ mlir::Value ScalarExprEmitter::VisitCastExpr(CastExpr *ce) {
// eliminate the useless instructions emitted during translating E.
if (result.HasSideEffects)
Visit(subExpr);
- return cgf.cgm.emitNullConstant(destTy, cgf.getLoc(subExpr->getExprLoc()));
+ return cgf.cgm.emitNullConstant(destTy,
+ cgf.getLoc(subExpr->getExprLoc()));
}
// Since target may map different address spaces in AST to the same address
// space, an address space conversion may end up as a bitcast.
diff --git a/clang/lib/CIR/CodeGen/TargetInfo.h b/clang/lib/CIR/CodeGen/TargetInfo.h
index b07743890..0ba12ef7b 100644
--- a/clang/lib/CIR/CodeGen/TargetInfo.h
+++ b/clang/lib/CIR/CodeGen/TargetInfo.h
@@ -45,7 +45,7 @@ public:
/// Returns ABI info helper for the target.
const ABIInfo &getABIInfo() const { return *info; }
- /// Perform address space cast of an expression of pointer type.
+ /// Perform address space cast of an expression of pointer type.
/// \param V is the value to be casted to another address space.
/// \param SrcAddr is the CIR address space of \p V.
/// \param DestAddr is the targeted CIR address space.
``````````
</details>
https://github.com/llvm/llvm-project/pull/161212
More information about the llvm-branch-commits
mailing list