[clang] [CIR] Fix ptrdiff tests after 1191f353cefe3c7ceb8e76fd03296e082a247685 (PR #221703)
via cfe-commits
cfe-commits at lists.llvm.org
Mon Sep 7 04:11:16 PDT 2026
llvmorg-github-actions[bot] wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-clangir
Author: Mariya Podchishchaeva (Fznamznon)
<details>
<summary>Changes</summary>
---
Full diff: https://github.com/llvm/llvm-project/pull/221703.diff
2 Files Affected:
- (modified) clang/test/CIR/CodeGen/ptrdiff.c (+4-10)
- (modified) clang/test/CIR/CodeGen/ptrdiff.cpp (+2-5)
``````````diff
diff --git a/clang/test/CIR/CodeGen/ptrdiff.c b/clang/test/CIR/CodeGen/ptrdiff.c
index 26ce6f718e96f..b23879289c653 100644
--- a/clang/test/CIR/CodeGen/ptrdiff.c
+++ b/clang/test/CIR/CodeGen/ptrdiff.c
@@ -18,12 +18,9 @@ int addrcmp(const void* a, const void* b) {
// LLVM: trunc i64 %[[SUB]] to i32
// TODO: Fix inconsistency with LLVM (ptrtoint vs ptrtoaddr).
- // Classic-codegen seems to have temporarily reverted that
- // difference, but we should leave the TODO to make sure we
- // don't lose it next time it comes back.
// OGCG-LABEL: define dso_local i32 @addrcmp(
- // OGCG: %[[PTR_A:.*]] = ptrtoint ptr {{.*}} to i64
- // OGCG: %[[PTR_B:.*]] = ptrtoint ptr {{.*}} to i64
+ // OGCG: %[[PTR_A:.*]] = ptrtoaddr ptr {{.*}} to i64
+ // OGCG: %[[PTR_B:.*]] = ptrtoaddr ptr {{.*}} to i64
// OGCG: %[[SUB:.*]] = sub i64 %[[PTR_A]], %[[PTR_B]]
// OGCG-NOT: sdiv
// OGCG: trunc i64 %[[SUB]] to i32
@@ -46,12 +43,9 @@ unsigned long long test_ptr_diff(int *a, int* b) {
// LLVM: ret i64 %[[RETLOAD]]
// TODO: Fix inconsistency with LLVM (ptrtoint vs ptrtoaddr).
- // Classic-codegen seems to have temporarily reverted that
- // difference, but we should leave the TODO to make sure we
- // don't lose it next time it comes back.
// OGCG-LABEL: define dso_local i64 @test_ptr_diff(
- // OGCG: %[[IA:.*]] = ptrtoint ptr %{{.*}} to i64
- // OGCG: %[[IB:.*]] = ptrtoint ptr %{{.*}} to i64
+ // OGCG: %[[IA:.*]] = ptrtoaddr ptr %{{.*}} to i64
+ // OGCG: %[[IB:.*]] = ptrtoaddr ptr %{{.*}} to i64
// OGCG: %[[SUB:.*]] = sub i64 %[[IA]], %[[IB]]
// OGCG: %[[Q:.*]] = sdiv exact i64 %[[SUB]], 4
// OGCG: ret i64 %[[Q]]
diff --git a/clang/test/CIR/CodeGen/ptrdiff.cpp b/clang/test/CIR/CodeGen/ptrdiff.cpp
index a88c9fc335a4a..f55dc81a1d28b 100644
--- a/clang/test/CIR/CodeGen/ptrdiff.cpp
+++ b/clang/test/CIR/CodeGen/ptrdiff.cpp
@@ -23,12 +23,9 @@ size_type size(unsigned long *_start, unsigned long *_finish) {
// LLVM: ret i64 %[[RET]]
// TODO: Fix inconsistency with LLVM (ptrtoint vs ptrtoaddr).
- // Classic-codegen seems to have temporarily reverted that
- // difference, but we should leave the TODO to make sure we
- // don't lose it next time it comes back.
// OGCG-LABEL: define dso_local {{.*}}i64 @_Z4sizePmS_(
- // OGCG: %[[IA:.*]] = ptrtoint ptr %{{.*}} to i64
- // OGCG: %[[IB:.*]] = ptrtoint ptr %{{.*}} to i64
+ // OGCG: %[[IA:.*]] = ptrtoaddr ptr %{{.*}} to i64
+ // OGCG: %[[IB:.*]] = ptrtoaddr ptr %{{.*}} to i64
// OGCG: %[[SUB:.*]] = sub i64 %[[IA]], %[[IB]]
// OGCG: %[[Q:.*]] = sdiv exact i64 %[[SUB]], 8
// OGCG: ret i64 %[[Q]]
``````````
</details>
https://github.com/llvm/llvm-project/pull/221703
More information about the cfe-commits
mailing list