diff options
author | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-08-21 19:05:40 +0000 |
---|---|---|
committer | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-08-21 19:05:40 +0000 |
commit | 2431e8baed362f79e38b5e492a417bf99f24704f (patch) | |
tree | be59d009f746b778dfd3ea463d4b4b994b456230 /libcpp/configure.ac | |
parent | 802532b9e1829c6b2db8a490415ee351df7023f2 (diff) | |
download | gcc-2431e8baed362f79e38b5e492a417bf99f24704f.tar.gz |
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
Diffstat (limited to 'libcpp/configure.ac')
-rw-r--r-- | libcpp/configure.ac | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/libcpp/configure.ac b/libcpp/configure.ac index ceea29ce165..1250f495a9d 100644 --- a/libcpp/configure.ac +++ b/libcpp/configure.ac @@ -70,12 +70,15 @@ else fi # Checks for typedefs, structures, and compiler characteristics. +AC_C_BIGENDIAN AC_C_CONST AC_C_INLINE AC_FUNC_OBSTACK AC_TYPE_OFF_T AC_TYPE_SIZE_T -AC_CHECK_TYPE(ssize_t, int) +AC_TYPE_SSIZE_T +AC_TYPE_UINTPTR_T +AC_CHECK_TYPE(ptrdiff_t, int) AC_STRUCT_TM AC_CHECK_SIZEOF(int) AC_CHECK_SIZEOF(long) |