diff options
author | Kit Barton <kbarton@ca.ibm.com> | 2015-05-25 15:49:26 +0000 |
---|---|---|
committer | Kit Barton <kbarton@ca.ibm.com> | 2015-05-25 15:49:26 +0000 |
commit | 6646033e6e759657b6122fde64844fd28a2c9635 (patch) | |
tree | b29623a45a12224714ae003592cb553300c8a875 /llvm/lib/IR/Function.cpp | |
parent | b028cc80989ccbdeb6940d89b1bac5a036377249 (diff) | |
download | llvm-6646033e6e759657b6122fde64844fd28a2c9635.zip llvm-6646033e6e759657b6122fde64844fd28a2c9635.tar.gz llvm-6646033e6e759657b6122fde64844fd28a2c9635.tar.bz2 |
This patch adds support for the vector quadword add/sub instructions introduced
in POWER8:
vadduqm
vaddeuqm
vaddcuq
vaddecuq
vsubuqm
vsubeuqm
vsubcuq
vsubecuq
In addition to adding the instructions themselves, it also adds support for the
v1i128 type for intrinsics (Intrinsics.td, Function.cpp, and
IntrinsicEmitter.cpp).
http://reviews.llvm.org/D9081
llvm-svn: 238144
Diffstat (limited to 'llvm/lib/IR/Function.cpp')
-rw-r--r-- | llvm/lib/IR/Function.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/llvm/lib/IR/Function.cpp b/llvm/lib/IR/Function.cpp index c579b6b..cf8e3ed 100644 --- a/llvm/lib/IR/Function.cpp +++ b/llvm/lib/IR/Function.cpp @@ -548,7 +548,8 @@ enum IIT_Info { IIT_HALF_VEC_ARG = 29, IIT_SAME_VEC_WIDTH_ARG = 30, IIT_PTR_TO_ARG = 31, - IIT_VEC_OF_PTRS_TO_ELT = 32 + IIT_VEC_OF_PTRS_TO_ELT = 32, + IIT_I128 = 33 }; @@ -595,6 +596,9 @@ static void DecodeIITType(unsigned &NextElt, ArrayRef<unsigned char> Infos, case IIT_I64: OutputTable.push_back(IITDescriptor::get(IITDescriptor::Integer, 64)); return; + case IIT_I128: + OutputTable.push_back(IITDescriptor::get(IITDescriptor::Integer, 128)); + return; case IIT_V1: OutputTable.push_back(IITDescriptor::get(IITDescriptor::Vector, 1)); DecodeIITType(NextElt, Infos, OutputTable); |