[Hexagon] Loop instructions don't need special processing. Extension and fitting is performed by generic code and the comment is incorrect, loops don't have a separate extended opcode.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@261118 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Colin LeMahieu 2016-02-17 18:14:05 +00:00
parent 1d3171f22a
commit 2cd1e5c04a

View File

@ -1606,31 +1606,6 @@ int HexagonAsmParser::processInstruction(MCInst &Inst,
}
break;
}
case Hexagon::J2_loop1r:
case Hexagon::J2_loop1i:
case Hexagon::J2_loop0r:
case Hexagon::J2_loop0i: {
MCOperand &MO = Inst.getOperand(0);
// Loop has different opcodes for extended vs not extended, but we should
// not use the other opcode as it is a legacy artifact of TD files.
int64_t Value;
if (MO.getExpr()->evaluateAsAbsolute(Value)) {
// if the operand can fit within a 7:2 field
if (Value < (1 << 8) && Value >= -(1 << 8)) {
SMLoc myLoc = Operands[2]->getStartLoc();
// # is left in startLoc in the case of ##
// If '##' found then force extension.
if (*myLoc.getPointer() == '#') {
MustExtend = true;
break;
}
} else {
// If immediate and out of 7:2 range.
MustExtend = true;
}
}
break;
}
// Translate a "$Rdd = $Rss" to "$Rdd = combine($Rs, $Rt)"
case Hexagon::A2_tfrp: {