This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
search_line_fast in the lexer is documented as being a critical path. Several architectures already provide an optimized implementation of this routine using vector operations. This patch provides a version for ARM using the Neon vector extensions. Although it has not been tested on big-endian (I don't have anything big-endian to do native testing on), I believe the code doesn't need further porting: the use of vld1q_u8() to read the data from memory will always put the lowest addressed byte into lane 0 of the vector. Bootstrapped on arm-linux-gnueabi with the necessary options to enable the use of Neon. OK for trunk? * lex.c (search_line_fast): Provide Neon-optimized version for ARM.
Attachment:
lex.patch
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |