diff options
author | Ron Lieberman <ronl@codeaurora.org> | 2016-08-01 19:36:39 +0000 |
---|---|---|
committer | Ron Lieberman <ronl@codeaurora.org> | 2016-08-01 19:36:39 +0000 |
commit | 8123b966cb7b8dd117b7d0355d2e17b7a47bb911 (patch) | |
tree | 9135d759df3ec32e1f1cadb6c0f3b059a1bf049f /llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp | |
parent | 38115ffcefac1b2a304bb3f64b7b20aa33f55c7f (diff) | |
download | bcm5719-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.cpp | 7 |
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); |