summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
diff options
context:
space:
mode:
authorRon Lieberman <ronl@codeaurora.org>2016-08-01 19:36:39 +0000
committerRon Lieberman <ronl@codeaurora.org>2016-08-01 19:36:39 +0000
commit8123b966cb7b8dd117b7d0355d2e17b7a47bb911 (patch)
tree9135d759df3ec32e1f1cadb6c0f3b059a1bf049f /llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
parent38115ffcefac1b2a304bb3f64b7b20aa33f55c7f (diff)
downloadbcm5719-llvm-8123b966cb7b8dd117b7d0355d2e17b7a47bb911.tar.gz
bcm5719-llvm-8123b966cb7b8dd117b7d0355d2e17b7a47bb911.zip
[Hexagon] Generate vector printing instructions
llvm-svn: 277370
Diffstat (limited to 'llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp')
-rw-r--r--llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp b/llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
index 17396942898..94fd52c38e5 100644
--- a/llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
+++ b/llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
@@ -86,6 +86,10 @@ static cl::opt<bool> EnableLoopResched("hexagon-loop-resched", cl::init(true),
static cl::opt<bool> HexagonNoOpt("hexagon-noopt", cl::init(false),
cl::Hidden, cl::desc("Disable backend optimizations"));
+static cl::opt<bool> EnableVectorPrint("enable-hexagon-vector-print",
+ cl::Hidden, cl::ZeroOrMore, cl::init(false),
+ cl::desc("Enable Hexagon Vector print instr pass"));
+
/// HexagonTargetMachineModule - Note that this is used on hosts that
/// cannot link in a library unless there are references into the
/// library. In particular, it seems that it is not possible to get
@@ -135,6 +139,7 @@ namespace llvm {
FunctionPass *createHexagonSplitConst32AndConst64();
FunctionPass *createHexagonSplitDoubleRegs();
FunctionPass *createHexagonStoreWidening();
+ FunctionPass *createHexagonVectorPrint();
} // end namespace llvm;
static Reloc::Model getEffectiveRelocModel(Optional<Reloc::Model> RM) {
@@ -331,6 +336,8 @@ void HexagonPassConfig::addPreEmitPass() {
addPass(createHexagonPacketizer(), false);
}
+ if (EnableVectorPrint)
+ addPass(createHexagonVectorPrint(), false);
// Add CFI instructions if necessary.
addPass(createHexagonCallFrameInformation(), false);
OpenPOWER on IntegriCloud