[midend]BinaryExpStack表达式弹出部分优化
This commit is contained in:
@@ -262,10 +262,12 @@ void SysYIRGenerator::compute() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 弹出BinaryExpStack的表达式
|
// 弹出BinaryExpStack的表达式
|
||||||
while(begin < end) {
|
int count = end - begin;
|
||||||
|
for (int i = 0; i < count; i++) {
|
||||||
BinaryExpStack.pop_back();
|
BinaryExpStack.pop_back();
|
||||||
BinaryExpLenStack.back()--;
|
}
|
||||||
end--;
|
if (!BinaryExpLenStack.empty()) {
|
||||||
|
BinaryExpLenStack.back() -= count;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 计算后缀表达式
|
// 计算后缀表达式
|
||||||
|
|||||||
Reference in New Issue
Block a user