aboutsummaryrefslogtreecommitdiff
path: root/ChangeLog
diff options
context:
space:
mode:
authorChris Metcalf <cmetcalf@mellanox.com>2017-12-05 10:24:56 -0500
committerChris Metcalf <cmetcalf@mellanox.com>2017-12-05 10:24:56 -0500
commitf18b8dc7d7ef3f01804e241d40f92faf480264c0 (patch)
treeafdff9b17e2e45a11f18d5ea87a22c6705949d73 /ChangeLog
parent446d22e91d3113be57a4b0d1151cf337458c3bec (diff)
downloadglibc-f18b8dc7d7ef3f01804e241d40f92faf480264c0.zip
glibc-f18b8dc7d7ef3f01804e241d40f92faf480264c0.tar.gz
glibc-f18b8dc7d7ef3f01804e241d40f92faf480264c0.tar.bz2
tilegx: work around vector insn bug in gcc
Avoid an issue in gcc where some of the vector (aka SIMD) ops will sometimes end up getting wrongly optimized out. We use these instructions in many of the string implementations. If/when we have an upstreamed fix for this problem in gcc we can conditionalize the use of the extended assembly workaround in glibc.
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog14
1 files changed, 14 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 333012b..ded6845 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,17 @@
+2017-12-05 Chris Metcalf <cmetcalf@mellanox.com>
+
+ * sysdeps/tile/tilegx/string-endian.h (VECOP): Provide working
+ replacements for __insn_xxx builtins for v1cmpeq, v1cmpltu,
+ v1cmpne, v1add, v1shru, v1shl (register and immediate versions).
+ * sysdeps/tile/tilegx/memchr.c (__memchr): Use VECOP function
+ instead of __insn__xxx.
+ * sysdeps/tile/tilegx/rawmemchr.c (__rawmemchr): Likewise.
+ * sysdeps/tile/tilegx/strstr.c (strcasechr): Likewise.
+ * sysdeps/tile/tilegx/strrchr.c (strrchr): Likewise.
+ * sysdeps/tile/tilegx/strlen.c (strlen): Likewise.
+ * sysdeps/tile/tilegx/strchrnul.c (__strchrnul): Likewise.
+ * sysdeps/tile/tilegx/strchr.c (strchr): Likewise.
+
2017-12-05 Florian Weimer <fweimer@redhat.com>
Linux: Implement interfaces for memory protection keys