[Hexagon] Implement branch relaxation

Patch by Sirish Pande.

llvm-svn: 266792
diff --git a/llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp b/llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
index 01b917d..47c525f 100644
--- a/llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
+++ b/llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
@@ -95,6 +95,7 @@
 
 namespace llvm {
   FunctionPass *createHexagonBitSimplify();
+  FunctionPass *createHexagonBranchRelaxation();
   FunctionPass *createHexagonCallFrameInformation();
   FunctionPass *createHexagonCFGOptimizer();
   FunctionPass *createHexagonCommonGEP();
@@ -287,6 +288,8 @@
   if (!NoOpt)
     addPass(createHexagonNewValueJump(), false);
 
+  addPass(createHexagonBranchRelaxation(), false);
+
   // Create Packets.
   if (!NoOpt) {
     if (!DisableHardwareLoops)