summaryrefslogtreecommitdiffstats
path: root/clang/test/Sema/big-endian-neon-initializers.c
Commit message (Collapse)AuthorAgeFilesLines
* AArch64: use aarch64_be instead of arm64_be in all tests.Tim Northover2014-07-231-1/+1
| | | | | | | | arm64_be doesn't really exist; it was useful for testing while AArch64 and ARM64 were separate, but now the only real way to refer to the system is aarch64_be. llvm-svn: 213747
* The ability to use vector initializer lists is a GNU vector extensionJames Molloy2014-06-201-0/+13
and is unrelated to the NEON intrinsics in arm_neon.h. On little endian machines it works fine, however on big endian machines it exhibits surprising behaviour: uint32x2_t x = {42, 64}; return vget_lane_u32(x, 0); // Will return 64. Because of this, explicitly call out that it is unsupported on big endian machines. This patch will emit the following warning in big-endian mode: test.c:3:15: warning: vector initializers are a GNU extension and are not compatible with NEON intrinsics [-Wgnu] int32x4_t x = {0, 1, 2, 3}; ^ test.c:3:15: note: consider using vld1q_s32() to initialize a vector from memory, or vcombine_s32(vcreate_s32(), vcreate_s32()) to initialize from integer constants 1 warning generated. llvm-svn: 211362
OpenPOWER on IntegriCloud