lex.c (search_line_sse42): Correctly advance the pointer to an aligned address.
authorUros Bizjak <uros@gcc.gnu.org>
Tue, 3 Nov 2015 19:05:50 +0000 (20:05 +0100)
committerUros Bizjak <uros@gcc.gnu.org>
Tue, 3 Nov 2015 19:05:50 +0000 (20:05 +0100)
* lex.c (search_line_sse42): Correctly advance the pointer to an
aligned address.

From-SVN: r229718

libcpp/ChangeLog
libcpp/lex.c

index 295124e2480077fbf3eb127940977c5ce9eb26b6..61b0177dd5102a5bb0d644ba9ba8fd4b76d49692 100644 (file)
@@ -1,3 +1,8 @@
+2015-11-03  Uros Bizjak  <ubizjak@gmail.com>
+
+       * lex.c (search_line_sse42): Correctly advance the pointer to an
+       aligned address.
+
 2015-11-02  David Malcolm  <dmalcolm@redhat.com>
 
        * include/line-map.h (source_location): In the table in the
 
 2014-12-02  Manuel López-Ibáñez  <manu@gcc.gnu.org>
 
-        * line-map.c (linemap_add): Fix typo.
-        (linemap_line_start): Fix whitespace.
+       * line-map.c (linemap_add): Fix typo.
+       (linemap_line_start): Fix whitespace.
 
 2014-11-29  John Schmerge  <jbschmerge@gmail.com>
 
index 0aa109057523be250d02ce4e4b95ff3ed816fd2d..7e97bc2b28962f1474ebed8b1033b5646da8ea69 100644 (file)
@@ -447,7 +447,7 @@ search_line_sse42 (const uchar *s, const uchar *end)
       /* Advance the pointer to an aligned address.  We will re-scan a
         few bytes, but we no longer need care for reading past the
         end of a page, since we're guaranteed a match.  */
-      s = (const uchar *)((si + 16) & -16);
+      s = (const uchar *)((si + 15) & -16);
     }
 
   /* Main loop, processing 16 bytes at a time.  */