| 12345678910111213141516171819 |
- #!/bin/bash
- # 获取脚本所在目录
- SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
- # 切换到项目根目录
- cd "$SCRIPT_DIR/../.."
- # 确保输出目录存在
- mkdir -p output/cpp
- # 使用 -S 参数让 opt 直接输出 .ll 文件,并重定向错误输出到日志
- opt -load ./build/CppModuleFusion.so -cpp-codefusion proprocess_output/cpp/combined_cpp_tagged.ll -S -o output/cpp/cpp_module_fusion_text.ll 2> output/cpp/log_cpp_module_fusion.txt
- # 由于直接生成了 .ll 文件,不再需要 llvm-dis 命令
- llvm-cbe output/cpp/cpp_module_fusion_text.ll
- echo "C++ module fusion completed successfully."
- echo "Output files:"
- echo " - LLVM IR: output/cpp/cpp_module_fusion_text.ll"
- echo " - Log file: output/cpp/log_cpp_module_fusion.txt"
|