1
0
mirror of https://sourceware.org/git/glibc.git synced 2026-10-24 01:33:52 +03:00

aarch64: Fix undefined behavior in _dl_procinfo

1 << 31 is undefined, so replace it with a cleaner check.  Also remove
magic numbers in comments.

	* sysdeps/unix/sysv/linux/aarch64/dl-procinfo.h: Remove
	mention of magic numbers in comments.
	(_dl_procinfo): Fix undefined behavior
This commit is contained in:
Siddhesh Poyarekar
2017-06-09 14:18:11 +05:30
parent ab70273bb7
commit 6c85cc2852
2 changed files with 9 additions and 3 deletions

View File

@@ -40,7 +40,7 @@ _dl_procinfo (unsigned int type, unsigned long int word)
_dl_printf ("AT_HWCAP: ");
for (i = 0; i < 32; ++i)
if (word & (1 << i))
if ((word >> i) & 1)
_dl_printf (" %s", GLRO(dl_aarch64_cap_flags)[i]);
_dl_printf ("\n");
@@ -56,10 +56,10 @@ _dl_hwcap_string (int idx)
};
/* 13 HWCAP bits set. */
/* Number of HWCAP bits set. */
#define _DL_HWCAP_COUNT 13
/* Low 13 bits are allocated in HWCAP. */
/* Offset of the last bit allocated in HWCAP. */
#define _DL_HWCAP_LAST 12
/* HWCAP_CPUID should be available by default to influence IFUNC as well as