Разбор C в Ocaml

Я хотел бы получить абстрактное синтаксическое дерево (AST) из кода C в значение OCaml, чтобы я мог дальше обрабатывать проанализированный код с помощью простая программа OCaml.

Я имел в виду использовать GCC, получить AST (в GIMPLE) с помощью ловушки и преобразовать код GIMPLE в Ocaml.

Но мне интересно, есть ли другой способ или кто-нибудь уже сделал что-то подобное. (На самом деле я мало что нашел в этом ...)

Я не хочу прибегать к использованию CIL. Это анализатор OCaml для кода C, но он не содержит всех оптимизаций что есть у GCC. (Мне особенно нужен более глубокий анализ псевдонимов, чем тот, который реализован в CIL.)

Может ли LLVM быть хорошей идеей для изучения? Возможно, уже сделано?

Есть идея получше?

7
задан Daz 4 March 2011 в 15:10
поделиться