diff options
author | Brendon Cahoon <bcahoon@codeaurora.org> | 2012-05-11 19:56:59 +0000 |
---|---|---|
committer | Brendon Cahoon <bcahoon@codeaurora.org> | 2012-05-11 19:56:59 +0000 |
commit | 31f8723ef3822837e4bf6d77973177592afc6bcd (patch) | |
tree | 30090845a2f8752792b467a760dec9c8bf8933a9 /llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp | |
parent | 06e34d92201a98a6c4ed497bef4394b5df8a1cb4 (diff) | |
download | bcm5719-llvm-31f8723ef3822837e4bf6d77973177592afc6bcd.tar.gz bcm5719-llvm-31f8723ef3822837e4bf6d77973177592afc6bcd.zip |
Hexagon constant extender support.
Patch by Jyotsna Verma.
llvm-svn: 156634
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 8af95a9c206..cad14739834 100644 --- a/llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp +++ b/llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp @@ -28,6 +28,10 @@ static cl:: opt<bool> DisableHardwareLoops( "disable-hexagon-hwloops", cl::Hidden, cl::desc("Disable Hardware Loops for Hexagon target")); +static cl:: +opt<bool> DisableCExtOpt( + "disable-hexagon-cextopt", cl::Hidden, + cl::desc("Disable Optimization of Constant Extenders")); /// HexagonTargetMachineModule - Note that this is used on hosts that /// cannot link in a library unless there are references into the @@ -110,6 +114,9 @@ bool HexagonPassConfig::addInstSelector() { bool HexagonPassConfig::addPreRegAlloc() { + if (!DisableCExtOpt) { + PM->add(createHexagonOptimizeConstExt(getHexagonTargetMachine())); + } if (!DisableHardwareLoops) { PM->add(createHexagonHardwareLoops()); } |