Fix case where a pre-inc/dec load/store would not be formed if the
add/sub that forms the inc/dec part of the operation was the first
instruction in the block being examined.
Details
Diff Detail
Event Timeline
lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp | ||
---|---|---|
983 | No, lines 954, 955 filter out non-register operands, this new check filters out register operands of register 0, which is not a real register. These can show up in dbg_value instructions, which I removed as a special case in the loop below. | |
1524 | Yep and yep. |
LGTM once you've addressed the minor nits.
lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp | ||
---|---|---|
983 | Ah, the subtle difference between !isReg and !getReg.. Thanks for the clarification. |
Did you mean to delete lines 954 and 955? Otherwise, I'm not sure why this check would be necessary.