diff options
author | Tim Northover <tnorthover@apple.com> | 2013-08-01 09:20:35 +0000 |
---|---|---|
committer | Tim Northover <tnorthover@apple.com> | 2013-08-01 09:20:35 +0000 |
commit | 87773c318fcee853fb34a80a10c4347d523bdafb (patch) | |
tree | 6c8b6620d46529f553a508e9190a264534e0a0dd /lib/Target/AArch64/AArch64RegisterInfo.td | |
parent | 691aa094dafe54151b6f70168f066bd87c161e8d (diff) | |
download | llvm-87773c318fcee853fb34a80a10c4347d523bdafb.tar.gz llvm-87773c318fcee853fb34a80a10c4347d523bdafb.tar.bz2 llvm-87773c318fcee853fb34a80a10c4347d523bdafb.tar.xz |
AArch64: add initial NEON support
Patch by Ana Pazos.
- Completed implementation of instruction formats:
AdvSIMD three same
AdvSIMD modified immediate
AdvSIMD scalar pairwise
- Completed implementation of instruction classes
(some of the instructions in these classes
belong to yet unfinished instruction formats):
Vector Arithmetic
Vector Immediate
Vector Pairwise Arithmetic
- Initial implementation of instruction formats:
AdvSIMD scalar two-reg misc
AdvSIMD scalar three same
- Intial implementation of instruction class:
Scalar Arithmetic
- Initial clang changes to support arm v8 intrinsics.
Note: no clang changes for scalar intrinsics function name mangling yet.
- Comprehensive test cases for added instructions
To verify auto codegen, encoding, decoding, diagnosis, intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187567 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/AArch64/AArch64RegisterInfo.td')
-rw-r--r-- | lib/Target/AArch64/AArch64RegisterInfo.td | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/Target/AArch64/AArch64RegisterInfo.td b/lib/Target/AArch64/AArch64RegisterInfo.td index cc2bb6135c..b3a81b1dc0 100644 --- a/lib/Target/AArch64/AArch64RegisterInfo.td +++ b/lib/Target/AArch64/AArch64RegisterInfo.td @@ -185,7 +185,7 @@ foreach Index = 0-31 in { // These two classes contain the same registers, which should be reasonably // sensible for MC and allocation purposes, but allows them to be treated // separately for things like stack spilling. -def VPR64 : RegisterClass<"AArch64", [v2f32, v2i32, v4i16, v8i8], 64, +def VPR64 : RegisterClass<"AArch64", [v2f32, v2i32, v4i16, v8i8, v1i64], 64, (sequence "V%u", 0, 31)>; def VPR128 : RegisterClass<"AArch64", |