]> git.ipfire.org Git - thirdparty/gcc.git/commit - libcpp/configure.ac
Vectorize fast path of _cpp_clean_line.
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 21 Aug 2010 19:05:40 +0000 (19:05 +0000)
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 21 Aug 2010 19:05:40 +0000 (19:05 +0000)
commit2431e8baed362f79e38b5e492a417bf99f24704f
treebe59d009f746b778dfd3ea463d4b4b994b456230
parent802532b9e1829c6b2db8a490415ee351df7023f2
Vectorize fast path of _cpp_clean_line.

* configure.ac (AC_C_BIGENDIAN, AC_TYPE_UINTPTR_T): New tests.
(ssize_t): Check via AC_TYPE_SSIZE_T instead of AC_CHECK_TYPE.
(ptrdiff_t): Check via AC_CHECK_TYPE.
* config.in, configure: Rebuild.
* system.h: Include stdint.h, if available.
* lex.c (WORDS_BIGENDIAN): Provide default.
(acc_char_mask_misalign, acc_char_replicate, acc_char_cmp,
acc_char_index, search_line_acc_char, repl_chars, search_line_mmx,
search_line_sse2, search_line_sse42, init_vectorized_lexer,
search_line_fast): New.
(_cpp_clean_line): Use search_line_fast.  Restructure the fast
loop to make it clear when we're leaving the loop.  Stay in the
fast loop for non-trigraph '?'.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@163446 138bc75d-0d04-0410-961f-82ee72b054a4
libcpp/ChangeLog
libcpp/config.in
libcpp/configure
libcpp/configure.ac
libcpp/lex.c
libcpp/system.h