about summary refs log tree commit diff
diff options
context:
space:
mode:
authorSteve Ellcey <sellcey@caviumnetworks.com>2017-08-22 16:22:05 -0700
committerSteve Ellcey <sellcey@caviumnetworks.com>2017-08-22 16:22:05 -0700
commit5a706f649de3952271930a8340db4ca8aa50f485 (patch)
tree1d40a7ede82c26ca80844b927f690be07fa4ca85
parentb513da7e80febbbfb8e58282075018652b6f7273 (diff)
downloadglibc-5a706f649de3952271930a8340db4ca8aa50f485.tar.gz
glibc-5a706f649de3952271930a8340db4ca8aa50f485.tar.xz
glibc-5a706f649de3952271930a8340db4ca8aa50f485.zip
aarch64: Use PTR_REG macro to fix ILP32 bug and make code consistent
	* sysdeps/aarch64/dl-tlsdesc.S (_dl_tlsdesc_dynamic):
	Use PTR_REG macro in cmp instruction.
-rw-r--r--ChangeLog6
-rw-r--r--sysdeps/aarch64/dl-tlsdesc.S2
2 files changed, 7 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 1890507a01..43c8880a76 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2017-08-22  Szabolcs Nagy  <szabolcs.nagy@arm.com>
+	    Steve Ellcey  <sellcey@cavium.com>
+
+	* sysdeps/aarch64/dl-tlsdesc.S (_dl_tlsdesc_dynamic):
+	Use PTR_REG macro in cmp instruction.
+
 2017-08-22  Gabriel F. T. Gomes  <gftg@linux.vnet.ibm.com>
 
 	* include/libc-symbols.h: [!defined HAVE_GCC_IFUNC] (__ifunc):
diff --git a/sysdeps/aarch64/dl-tlsdesc.S b/sysdeps/aarch64/dl-tlsdesc.S
index a70cfd513c..3b2da62f39 100644
--- a/sysdeps/aarch64/dl-tlsdesc.S
+++ b/sysdeps/aarch64/dl-tlsdesc.S
@@ -208,7 +208,7 @@ _dl_tlsdesc_dynamic:
 	ldr	PTR_REG (2), [x1,#TLSDESC_MODID]
 	add	PTR_REG (0), PTR_REG (0), PTR_REG (2), lsl #(PTR_LOG_SIZE + 1)
 	ldr	PTR_REG (0), [x0] /* Load val member of DTV entry.  */
-	cmp	x0, #TLS_DTV_UNALLOCATED
+	cmp	PTR_REG (0), #TLS_DTV_UNALLOCATED
 	b.eq	2f
 	ldr	PTR_REG (1), [x1,#TLSDESC_MODOFF]
 	add	PTR_REG (0), PTR_REG (0), PTR_REG (1)