You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

31 lines
828 B

#include <iostream>
#include <string>
static void PrintUsage(const char* argv0) {
std::cerr << "用法: " << (argv0 ? argv0 : "compiler") << " <input.sy> [options]\n";
std::cerr << "说明: 当前为工程骨架阶段,暂不执行完整编译流程,仅用于验证可编译/可链接。\n";
}
int main(int argc, char** argv) {
if (argc <= 1) {
PrintUsage(argv[0]);
return 0;
}
std::string input_path = argv[1];
if (input_path == "-h" || input_path == "--help") {
PrintUsage(argv[0]);
return 0;
}
// TODO: 后续在此接入完整流水线:
// 1) frontend: ANTLR 解析 + AST 构建
// 2) sem: 语义分析
// 3) irgen: AST -> IR
// 4) ir passes: 可选优化
// 5) mir/backend: AArch64 指令选择、寄存器分配、栈帧、汇编输出
(void)input_path;
return 0;
}