@@ -250,37 +250,37 @@ void InitTlsSize() {}
250250static atomic_uintptr_t thread_descriptor_size;
251251
252252static uptr ThreadDescriptorSizeFallback () {
253- uptr val = 0 ;
254253# if defined(__x86_64__) || defined(__i386__) || defined(__arm__)
255254 int major;
256255 int minor;
257256 int patch;
258257 if (GetLibcVersion (&major, &minor, &patch) && major == 2 ) {
259258 /* sizeof(struct pthread) values from various glibc versions. */
260259 if (SANITIZER_X32)
261- val = 1728 ; // Assume only one particular version for x32.
260+ return 1728 ; // Assume only one particular version for x32.
262261 // For ARM sizeof(struct pthread) changed in Glibc 2.23.
263262 else if (SANITIZER_ARM)
264- val = minor <= 22 ? 1120 : 1216 ;
263+ return minor <= 22 ? 1120 : 1216 ;
265264 else if (minor <= 3 )
266- val = FIRST_32_SECOND_64 (1104 , 1696 );
265+ return FIRST_32_SECOND_64 (1104 , 1696 );
267266 else if (minor == 4 )
268- val = FIRST_32_SECOND_64 (1120 , 1728 );
267+ return FIRST_32_SECOND_64 (1120 , 1728 );
269268 else if (minor == 5 )
270- val = FIRST_32_SECOND_64 (1136 , 1728 );
269+ return FIRST_32_SECOND_64 (1136 , 1728 );
271270 else if (minor <= 9 )
272- val = FIRST_32_SECOND_64 (1136 , 1712 );
271+ return FIRST_32_SECOND_64 (1136 , 1712 );
273272 else if (minor == 10 )
274- val = FIRST_32_SECOND_64 (1168 , 1776 );
273+ return FIRST_32_SECOND_64 (1168 , 1776 );
275274 else if (minor == 11 || (minor == 12 && patch == 1 ))
276- val = FIRST_32_SECOND_64 (1168 , 2288 );
275+ return FIRST_32_SECOND_64 (1168 , 2288 );
277276 else if (minor <= 14 )
278- val = FIRST_32_SECOND_64 (1168 , 2304 );
277+ return FIRST_32_SECOND_64 (1168 , 2304 );
279278 else if (minor < 32 ) // Unknown version
280- val = FIRST_32_SECOND_64 (1216 , 2304 );
279+ return FIRST_32_SECOND_64 (1216 , 2304 );
281280 else // minor == 32
282- val = FIRST_32_SECOND_64 (1344 , 2496 );
281+ return FIRST_32_SECOND_64 (1344 , 2496 );
283282 }
283+ return 0 ;
284284# elif defined(__s390__) || defined(__sparc__)
285285 // The size of a prefix of TCB including pthread::{specific_1stblock,specific}
286286 // suffices. Just return offsetof(struct pthread, specific_used), which hasn't
@@ -290,9 +290,9 @@ static uptr ThreadDescriptorSizeFallback() {
290290 return FIRST_32_SECOND_64 (524 , 1552 );
291291# elif defined(__mips__)
292292 // TODO(sagarthakur): add more values as per different glibc versions.
293- val = FIRST_32_SECOND_64 (1152 , 1776 );
293+ return FIRST_32_SECOND_64 (1152 , 1776 );
294294# elif SANITIZER_LOONGARCH64
295- val = 1856 ; // from glibc 2.36
295+ return 1856 ; // from glibc 2.36
296296# elif SANITIZER_RISCV64
297297 int major;
298298 int minor;
@@ -301,20 +301,19 @@ static uptr ThreadDescriptorSizeFallback() {
301301 // TODO: consider adding an optional runtime check for an unknown (untested)
302302 // glibc version
303303 if (minor <= 28 ) // WARNING: the highest tested version is 2.29
304- val = 1772 ; // no guarantees for this one
304+ return 1772 ; // no guarantees for this one
305305 else if (minor <= 31 )
306- val = 1772 ; // tested against glibc 2.29, 2.31
306+ return 1772 ; // tested against glibc 2.29, 2.31
307307 else
308- val = 1936 ; // tested against glibc 2.32
308+ return 1936 ; // tested against glibc 2.32
309309 }
310-
310+ return 0 ;
311311# elif defined(__aarch64__)
312312 // The sizeof (struct pthread) is the same from GLIBC 2.17 to 2.22.
313- val = 1776 ;
313+ return 1776 ;
314314# elif defined(__powerpc64__)
315- val = 1776 ; // from glibc.ppc64le 2.20-8.fc21
315+ return 1776 ; // from glibc.ppc64le 2.20-8.fc21
316316# endif
317- return val;
318317}
319318
320319uptr ThreadDescriptorSize () {
0 commit comments