[midend-IVE]参考libdivide库,实现了魔数的正确求解,如果后续出错直接用API或者不要除法强度削弱了

This commit is contained in:
rain2133
2025-08-14 05:12:54 +08:00
parent 06a368db39
commit 7547d34598
5 changed files with 421 additions and 61 deletions

View File

@@ -864,6 +864,8 @@ public:
return "shl";
case kSra:
return "ashr";
case kMulh:
return "mulh";
default:
return "Unknown";
}

View File

@@ -132,7 +132,7 @@ private:
* @param divisor 除数
* @return {魔数, 移位量}
*/
std::pair<int64_t, int> computeMulhMagicNumbers(int divisor) const;
std::pair<int, int> computeMulhMagicNumbers(int divisor) const;
/**
* 生成除法替换代码