summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGen/aarch64-neon-perm.c
Commit message (Collapse)AuthorAgeFilesLines
* Generalize NRVO to cover C structs.Akira Hatanaka2018-03-291-270/+54
| | | | | | | | | | | This commit generalizes NRVO to cover C structs (both trivial and non-trivial structs). rdar://problem/33599681 Differential Revision: https://reviews.llvm.org/D44968 llvm-svn: 328809
* Change memcpy/memove/memset to have dest and source alignment attributes ↵Daniel Neilson2018-01-191-54/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | (Step 1). Summary: Upstream LLVM is changing the the prototypes of the @llvm.memcpy/memmove/memset intrinsics. This change updates the Clang tests for this change. The @llvm.memcpy/memmove/memset intrinsics currently have an explicit argument which is required to be a constant integer. It represents the alignment of the dest (and source), and so must be the minimum of the actual alignment of the two. This change removes the alignment argument in favour of placing the alignment attribute on the source and destination pointers of the memory intrinsic call. For example, code which used to read: call void @llvm.memcpy.p0i8.p0i8.i32(i8* %dest, i8* %src, i32 100, i32 4, i1 false) will now read call void @llvm.memcpy.p0i8.p0i8.i32(i8* align 4 %dest, i8* align 4 %src, i32 100, i1 false) At this time the source and destination alignments must be the same (Step 1). Step 2 of the change, to be landed shortly, will relax that contraint and allow the source and destination to have different alignments. llvm-svn: 322964
* IRGen: Add optnone attribute on function during O0Mehdi Amini2017-05-291-1/+1
| | | | | | | | | | | Amongst other, this will help LTO to correctly handle/honor files compiled with O0, helping debugging failures. It also seems in line with how we handle other options, like how -fnoinline adds the appropriate attribute as well. Differential Revision: https://reviews.llvm.org/D28404 llvm-svn: 304127
* Update for LLVM changesDavid Majnemer2016-07-261-720/+696
| | | | | | | InstSimplify has gained the ability to remove needless bitcasts which perturbed some clang codegen tests. llvm-svn: 276728
* ARM & AArch64: fix IR-converted tests.Tim Northover2016-03-091-72/+72
| | | | | | | My script was converting %a0 to [[A]]0 if it had seen %a defined before %a0. Oops. llvm-svn: 263056
* ARM & AArch64: convert asm tests to LLVM IR and restrict optimizations.Tim Northover2016-03-091-416/+1603
| | | | | | | | | | | | | | | This is mostly a one-time autoconversion of tests that checked assembly after "-Owhatever" compiles to only run "opt -mem2reg" and check the assembly. This should make them much more stable to changes in LLVM so they won't break on unrelated changes. "opt -mem2reg" is a compromise designed to increase the readability of tests that check dataflow, while minimizing dependency on LLVM. Hopefully mem2reg is stable enough that no surpises will come along. Should address http://llvm.org/PR26815. llvm-svn: 263048
* AArch64: re-enable tests that were looking for a non-existent backend.Tim Northover2014-06-181-1/+1
| | | | | | | | In the final phase of the merge, I managed to disable a bunch of Clang tests accidentally. Fortunately none of them seem to have broken in the interim. llvm-svn: 211149
* AArch64/ARM64: update Clang after AArch64 removal.Tim Northover2014-05-241-3/+0
| | | | | | | | | | | A few (mostly CodeGen) parts of Clang were tightly coupled to the AArch64 backend. Now that it's gone, they will not even compile. I've also deduplicated RUN lines in many of the AArch64 tests. This might improve "make check-all" time noticably: some of those NEON tests were monsters. llvm-svn: 209578
* [ARM64] Allow the disabling of NEON and crypto instructions. Update tests to ↵James Molloy2014-04-161-1/+1
| | | | | | pass -target-feature +neon. llvm-svn: 206394
* ARM64: initial clang support commit.Tim Northover2014-03-291-55/+57
| | | | | | | | | | | This adds Clang support for the ARM64 backend. There are definitely still some rough edges, so please bring up any issues you see with this patch. As with the LLVM commit though, we think it'll be more useful for merging with AArch64 from within the tree. llvm-svn: 205100
* AArch64: convert NEON tests to use CHECK-LABEL.Tim Northover2014-03-031-180/+180
| | | | llvm-svn: 202703
* Implement AArch64 Neon instruction set Perm.Jiangning Liu2013-11-061-0/+1093
llvm-svn: 194124
OpenPOWER on IntegriCloud