diff options
author | Richard Sandiford <rsandifo@linux.vnet.ibm.com> | 2013-05-28 10:13:54 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@linux.vnet.ibm.com> | 2013-05-28 10:13:54 +0000 |
commit | 53c9efd9c102ed7a656c87f066a6562c8f11c2b0 (patch) | |
tree | e3f204fbb2bb748fa3fb5f933eb54c65bcaa26a8 /llvm/lib/Target/SystemZ/SystemZLongBranch.cpp | |
parent | 1eba4e325491979bc41f7dcb2c81ccbfacabe693 (diff) | |
download | bcm5719-llvm-53c9efd9c102ed7a656c87f066a6562c8f11c2b0.tar.gz bcm5719-llvm-53c9efd9c102ed7a656c87f066a6562c8f11c2b0.zip |
[SystemZ] Tweak SystemZInstrInfo::isBranch() interface
This is needed for the upcoming compare-and-branch patch. No functional
change intended.
llvm-svn: 182762
Diffstat (limited to 'llvm/lib/Target/SystemZ/SystemZLongBranch.cpp')
-rw-r--r-- | llvm/lib/Target/SystemZ/SystemZLongBranch.cpp | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/llvm/lib/Target/SystemZ/SystemZLongBranch.cpp b/llvm/lib/Target/SystemZ/SystemZLongBranch.cpp index 87d82f3ec5e..9db4f2d6006 100644 --- a/llvm/lib/Target/SystemZ/SystemZLongBranch.cpp +++ b/llvm/lib/Target/SystemZ/SystemZLongBranch.cpp @@ -211,22 +211,21 @@ TerminatorInfo SystemZLongBranch::describeTerminator(MachineInstr *MI) { TerminatorInfo Terminator; Terminator.Size = TII->getInstSizeInBytes(MI); if (MI->isConditionalBranch() || MI->isUnconditionalBranch()) { - Terminator.Branch = MI; switch (MI->getOpcode()) { case SystemZ::J: // Relaxes to JG, which is 2 bytes longer. - Terminator.TargetBlock = MI->getOperand(0).getMBB()->getNumber(); Terminator.ExtraRelaxSize = 2; break; case SystemZ::BRC: - // Relaxes to BRCL, which is 2 bytes longer. Operand 0 is the - // condition code mask. - Terminator.TargetBlock = MI->getOperand(1).getMBB()->getNumber(); + // Relaxes to BRCL, which is 2 bytes longer. Terminator.ExtraRelaxSize = 2; break; default: llvm_unreachable("Unrecognized branch instruction"); } + Terminator.Branch = MI; + Terminator.TargetBlock = + TII->getBranchInfo(MI).Target->getMBB()->getNumber(); } return Terminator; } |