aboutsummaryrefslogtreecommitdiff
path: root/libcpp
diff options
context:
space:
mode:
Diffstat (limited to 'libcpp')
-rw-r--r--libcpp/ChangeLog7
-rw-r--r--libcpp/lex.c2
2 files changed, 8 insertions, 1 deletions
diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog
index 5a41cf4..2224b9e 100644
--- a/libcpp/ChangeLog
+++ b/libcpp/ChangeLog
@@ -1,3 +1,10 @@
+2017-12-20 Michael Weiser <michael.weiser@gmx.de>
+
+ PR preprocessor/83492
+ * lex.c (search_line_fast) [__ARM_NEON && __ARM_64BIT_STATE]:
+ Fix selection of big-endian shift parameters by using
+ __ARM_BIG_ENDIAN.
+
2017-12-14 Bernd Edlinger <bernd.edlinger@hotmail.de>
* internal.h (maybe_print_line): Change signature.
diff --git a/libcpp/lex.c b/libcpp/lex.c
index a8dc3ba..6fca257 100644
--- a/libcpp/lex.c
+++ b/libcpp/lex.c
@@ -772,7 +772,7 @@ search_line_fast (const uchar *s, const uchar *end ATTRIBUTE_UNUSED)
const uint8x16_t repl_qm = vdupq_n_u8 ('?');
const uint8x16_t xmask = (uint8x16_t) vdupq_n_u64 (0x8040201008040201ULL);
-#ifdef __AARCH64EB
+#ifdef __ARM_BIG_ENDIAN
const int16x8_t shift = {8, 8, 8, 8, 0, 0, 0, 0};
#else
const int16x8_t shift = {0, 0, 0, 0, 8, 8, 8, 8};