forked from OSchip/llvm-project
Summary: Range checks were not properly performed in the lane arguments of Neon intrinsics implemented based on splat operations. Calls to those intrinsics where translated to `__builtin__shufflevector` calls directly by the pre-processor through the arm_neon.h macros, missing the chance for the proper range checks. This patch enables the range check by introducing an auxiliary splat instruction in arm_neon.td, delaying the translation to shufflevector calls to CGBuiltin.cpp in clang after the checks were performed. Reviewers: jmolloy, t.p.northover, rsmith, olista01, ostannard Reviewed By: ostannard Subscribers: ostannard, dnsampaio, danielkiss, kristof.beyls, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D74619 |
||
|---|---|---|
| .. | ||
| ABITest | ||
| CIndex | ||
| ClangVisualizers | ||
| TableGen | ||
| TestUtils | ||
| VtableTest | ||
| analyzer | ||
| check_cfc | ||
| hmaptool | ||
| perf-training | ||
| valgrind | ||
| CaptureCmd | ||
| ClangDataFormat.py | ||
| CmpDriver | ||
| FindSpecRefs | ||
| FuzzTest | ||
| bash-autocomplete.sh | ||
| builtin-defines.c | ||
| clangdiag.py | ||
| convert_arm_neon.py | ||
| creduce-clang-crash.py | ||
| find-unused-diagnostics.sh | ||
| make-ast-dump-check.sh | ||
| modfuzz.py | ||
| token-delta.py | ||