summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/AArch64/Utils
diff options
context:
space:
mode:
authorHao Liu <Hao.Liu@arm.com>2013-11-19 02:17:05 +0000
committerHao Liu <Hao.Liu@arm.com>2013-11-19 02:17:05 +0000
commit16edc4675cea405fbabd35dbe5387601b180463d (patch)
tree0e5376ed5cb9258ed7b0334d3977e95850ef7505 /llvm/lib/Target/AArch64/Utils
parent37776fb3a6fffea027d45420b8e9ca4d8fd52d49 (diff)
downloadbcm5719-llvm-16edc4675cea405fbabd35dbe5387601b180463d.tar.gz
bcm5719-llvm-16edc4675cea405fbabd35dbe5387601b180463d.zip
Implement AArch64 neon instructions class SIMD lsone and SIMD lone-post.
llvm-svn: 195078
Diffstat (limited to 'llvm/lib/Target/AArch64/Utils')
-rw-r--r--llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.h17
1 files changed, 16 insertions, 1 deletions
diff --git a/llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.h b/llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.h
index 7db52381813..d6ae147182d 100644
--- a/llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.h
+++ b/llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.h
@@ -317,7 +317,14 @@ namespace A64Layout {
_16B,
_8H,
_4S,
- _2D
+ _2D,
+
+ // Bare layout for the 128-bit vector
+ // (only show ".b", ".h", ".s", ".d" without vector number)
+ _B,
+ _H,
+ _S,
+ _D
};
}
@@ -332,6 +339,10 @@ A64VectorLayoutToString(A64Layout::VectorLayout Layout) {
case A64Layout::_8H: return ".8h";
case A64Layout::_4S: return ".4s";
case A64Layout::_2D: return ".2d";
+ case A64Layout::_B: return ".b";
+ case A64Layout::_H: return ".h";
+ case A64Layout::_S: return ".s";
+ case A64Layout::_D: return ".d";
default: llvm_unreachable("Unknown Vector Layout");
}
}
@@ -347,6 +358,10 @@ A64StringToVectorLayout(StringRef LayoutStr) {
.Case(".8h", A64Layout::_8H)
.Case(".4s", A64Layout::_4S)
.Case(".2d", A64Layout::_2D)
+ .Case(".b", A64Layout::_B)
+ .Case(".h", A64Layout::_H)
+ .Case(".s", A64Layout::_S)
+ .Case(".d", A64Layout::_D)
.Default(A64Layout::Invalid);
}
OpenPOWER on IntegriCloud