summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.h
diff options
context:
space:
mode:
authorSam Parker <sam.parker@arm.com>2017-09-29 13:11:33 +0000
committerSam Parker <sam.parker@arm.com>2017-09-29 13:11:33 +0000
commit963da5b1191f0ec084247252666d3f669fdaf71c (patch)
tree397d3ead2a6958ba1ccedc93cec935b89036c180 /llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.h
parent0b5db55b963a69d45f5712935c60d1ec8e69a511 (diff)
downloadbcm5719-llvm-963da5b1191f0ec084247252666d3f669fdaf71c.tar.gz
bcm5719-llvm-963da5b1191f0ec084247252666d3f669fdaf71c.zip
[ARM] v8.3-a complex number support
New instructions are added to AArch32 and AArch64 to aid floating-point multiplication and addition of complex numbers, where the complex numbers are packed in a vector register as a pair of elements. The Imaginary part of the number is placed in the more significant element, and the Real part of the number is placed in the less significant element. This patch adds assembler for the ARM target. Differential Revision: https://reviews.llvm.org/D36789 llvm-svn: 314511
Diffstat (limited to 'llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.h')
-rw-r--r--llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.h b/llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.h
index 86873a3a6cc..7dc311229cc 100644
--- a/llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.h
+++ b/llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.h
@@ -231,6 +231,9 @@ public:
const MCSubtargetInfo &STI, raw_ostream &O);
void printVectorListFourSpaced(const MCInst *MI, unsigned OpNum,
const MCSubtargetInfo &STI, raw_ostream &O);
+ template<int64_t Angle, int64_t Remainder>
+ void printComplexRotationOp(const MCInst *MI, unsigned OpNum,
+ const MCSubtargetInfo &STI, raw_ostream &O);
};
} // end namespace llvm
OpenPOWER on IntegriCloud