Skip to content

Commit 2c6448c

Browse files
committed
[sanitizer] Define 32bit uptr as uint
This makes it consistent with uintptr_t. It's 45138f7 with Darwin fix. Reviewed By: kstoimenov Differential Revision: https://reviews.llvm.org/D108163
1 parent f328f72 commit 2c6448c

File tree

2 files changed

+12
-5
lines changed

2 files changed

+12
-5
lines changed

compiler-rt/lib/sanitizer_common/sanitizer_internal_defs.h

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -139,8 +139,13 @@ namespace __sanitizer {
139139
typedef unsigned long long uptr;
140140
typedef signed long long sptr;
141141
#else
142+
# if (SANITIZER_WORDSIZE == 64)
142143
typedef unsigned long uptr;
143144
typedef signed long sptr;
145+
# else
146+
typedef unsigned int uptr;
147+
typedef signed int sptr;
148+
# endif
144149
#endif // defined(_WIN64)
145150
#if defined(__x86_64__)
146151
// Since x32 uses ILP32 data model in 64-bit hardware mode, we must use
@@ -182,15 +187,17 @@ typedef uptr OFF_T;
182187
#endif
183188
typedef u64 OFF64_T;
184189

185-
#if (SANITIZER_WORDSIZE == 64) || SANITIZER_MAC
190+
#if (SANITIZER_WORDSIZE == 64)
186191
typedef uptr operator_new_size_type;
187192
#else
188-
# if defined(__s390__) && !defined(__s390x__)
193+
# if defined(__s390__) && !defined(__s390x__)
189194
// Special case: 31-bit s390 has unsigned long as size_t.
190195
typedef unsigned long operator_new_size_type;
191-
# else
196+
# elif SANITIZER_MAC
197+
typedef unsigned long operator_new_size_type;
198+
# else
192199
typedef u32 operator_new_size_type;
193-
# endif
200+
# endif
194201
#endif
195202

196203
typedef u64 tid_t;

compiler-rt/lib/sanitizer_common/tests/sanitizer_bitvector_test.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ void Print(const set<uptr> &s) {
7171
#if defined(_WIN64)
7272
fprintf(stderr, "%llu ", *it);
7373
#else
74-
fprintf(stderr, "%lu ", *it);
74+
fprintf(stderr, "%zu ", *it);
7575
#endif
7676
}
7777
fprintf(stderr, "\n");

0 commit comments

Comments
 (0)