diff options
author | Krzysztof Parzyszek <kparzysz@codeaurora.org> | 2017-10-27 18:52:28 +0000 |
---|---|---|
committer | Krzysztof Parzyszek <kparzysz@codeaurora.org> | 2017-10-27 18:52:28 +0000 |
commit | 92a2635bbd239ba2a239a3f081e30a8c3873b465 (patch) | |
tree | 7aa51fa3d7dc1b0730ab0b74a41e35e476de5dec /llvm/lib/Target/Hexagon/HexagonConstExtenders.cpp | |
parent | 857ac594b7b97aa0769d8e4a2c4ecb485665de58 (diff) | |
download | bcm5719-llvm-92a2635bbd239ba2a239a3f081e30a8c3873b465.tar.gz bcm5719-llvm-92a2635bbd239ba2a239a3f081e30a8c3873b465.zip |
[Hexagon] Fix an incorrect assertion in HexagonConstExtenders.cpp
Making sure that an instruction has fewer operands than required, then
attempting to access one out of range is going to fail.
llvm-svn: 316785
Diffstat (limited to 'llvm/lib/Target/Hexagon/HexagonConstExtenders.cpp')
-rw-r--r-- | llvm/lib/Target/Hexagon/HexagonConstExtenders.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/Target/Hexagon/HexagonConstExtenders.cpp b/llvm/lib/Target/Hexagon/HexagonConstExtenders.cpp index 40e11451ede..1f4304f710e 100644 --- a/llvm/lib/Target/Hexagon/HexagonConstExtenders.cpp +++ b/llvm/lib/Target/Hexagon/HexagonConstExtenders.cpp @@ -1759,7 +1759,7 @@ bool HCE::replaceInstr(unsigned Idx, Register ExtR, const ExtenderInit &ExtI) { // Update offsets of the def's uses. for (std::pair<MachineInstr*,unsigned> P : RegOps) { unsigned J = P.second; - assert(P.first->getNumOperands() < J+1 && + assert(P.first->getNumOperands() > J+1 && P.first->getOperand(J+1).isImm()); MachineOperand &ImmOp = P.first->getOperand(J+1); ImmOp.setImm(ImmOp.getImm() + Diff); |