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] |
Hi, This is a rebased version of patch that adds a pattern to neon.md for implementing division with multiplication by reciprocal using vrecpe/vrecps with -funsafe-math-optimizations excluding -Os. The newly added test-cases are not vectorized on armeb target with -O2. I posted the analysis for that here: https://gcc.gnu.org/ml/gcc-patches/2016-05/msg01765.html Briefly, the difference between little and big-endian vectorizer is in arm_builtin_support_vector_misalignment() which calls default_builtin_support_vector_misalignment() for big-endian case, and that returns false because movmisalign_optab does not exist for V2SF mode. This isn't observed with -O3 because loop peeling for alignment gets enabled. It seems that the test cases in patch appear unsupported on armeb, after r221677 thus this patch requires no changes to target-supports.exp to adjust for armeb (unlike last time which stalled the patch). Bootstrap+tested on arm-linux-gnueabihf. Cross-tested on arm*-*-* variants. OK for trunk ? Thanks, Prathamesh
Attachment:
tcwg-319-3.txt
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |