Joel Stanley | 6e69ad0 | 2018-07-25 22:12:04 +0930 | [diff] [blame] | 1 | From aa65a43516da1d48011ef621ed5988289711d99b Mon Sep 17 00:00:00 2001 |
| 2 | From: marxin <marxin@138bc75d-0d04-0410-961f-82ee72b054a4> |
| 3 | Date: Fri, 29 Jun 2018 09:31:30 +0000 |
| 4 | Subject: [PATCH] Partial backport r256656 |
| 5 | |
| 6 | 2018-06-29 Martin Liska <mliska@suse.cz> |
| 7 | |
| 8 | Backport from mainline |
| 9 | 2018-01-10 Kelvin Nilsen <kelvin@gcc.gnu.org> |
| 10 | |
| 11 | * lex.c (search_line_fast): Remove illegal coercion of an |
| 12 | unaligned pointer value to vector pointer type and replace with |
| 13 | use of __builtin_vec_vsx_ld () built-in function, which operates |
| 14 | on unaligned pointer values. |
| 15 | |
| 16 | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-6-branch@261621 138bc75d-0d04-0410-961f-82ee72b054a4 |
| 17 | |
| 18 | |
| 19 | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-7-branch@262243 138bc75d-0d04-0410-961f-82ee72b054a4 |
| 20 | Signed-off-by: Joel Stanley <joel@jms.id.au> |
| 21 | --- |
| 22 | libcpp/lex.c | 2 +- |
| 23 | 1 files changed, 1 insertions(+), 1 deletion(-) |
| 24 | |
| 25 | diff --git a/libcpp/lex.c b/libcpp/lex.c |
| 26 | index 097c78002cbb..e0fb9e822c44 100644 |
| 27 | --- a/libcpp/lex.c |
| 28 | +++ b/libcpp/lex.c |
| 29 | @@ -568,7 +568,7 @@ search_line_fast (const uchar *s, const uchar *end ATTRIBUTE_UNUSED) |
| 30 | { |
| 31 | vc m_nl, m_cr, m_bs, m_qm; |
| 32 | |
| 33 | - data = *((const vc *)s); |
| 34 | + data = __builtin_vec_vsx_ld (0, s); |
| 35 | s += 16; |
| 36 | |
| 37 | m_nl = (vc) __builtin_vec_cmpeq(data, repl_nl); |
| 38 | -- |
| 39 | 2.17.1 |
| 40 | |