编译器级SSA IR代码扫描技术
Static-Single-Assignment Bringing Clarity to Code
多语言多框架技术支持
🔧编译系统支持多种编程语言及其生态系统:
Java 系列(包含 Freemarker、SpEL、EL、JSP 等子语言)、Golang 、PHP 、JavaScript/EcmaScript 等, 兼容各语言的主流版本。
✨深度支持 SpringBoot 等常见 Java 开发框架,基于标准 eBNF g4 语法文件构建。
先进的分析技术
🔍基于静态单赋值(SSA)形式,实现了一系列先进分析技术:
• 双向数据流分析:基于 Phi 函数,支持自顶向下和自底向上的完整分析链路
• 全局分析能力:支持跨包/跨文件分析,具备路径敏感的遍历优化
• 深度关联分析:数据流与控制流图(CFG)的深度结合
✨提供面向对象程序的闭包分析与上下文敏感的过程间分析
IR 数据库与分析规则
💾采用 SQLite 结构化存储,支持懒加载与懒存储机制:
• 高性能数据库:优化的存储结构确保分析性能
• SyntaxFlow 分析语言:直接对 IR 编译产物进行扫描
• 规则编写系统:将分析经验转化为可复用规则
📚查看 技术文档 了解详细使用方法
SyntaxFlow 已支持的(部分)规则列表
- 0