Экспорт GIMPLE из gcc в избранное  новое горячее всё    подписка   модер. 
От: FDSCvinj.ru fdsc.narod.ru
Дата: 28.05.08 12:28
Подскажите, есть ли какие-либо проекты по экспорту GIMPLE из gcc. Мне нужно получить дерево в файле с более-менее известным форматом (json, например).

Если нет, то хотя бы есть ли какие-то открытые проекты, где можно посмотреть, как люди работают с этим представлением
Re: Экспорт GIMPLE из gcc в избранное  новое    модер. 
От: Cyberax 
Дата: 28.05.08 12:38
Здравствуйте, FDSC, Вы писали:

FDS>Подскажите, есть ли какие-либо проекты по экспорту GIMPLE из gcc. Мне нужно получить дерево в файле с более-менее известным форматом (json, например).

А что именно собираетесь с ним делать?

FDS>Если нет, то хотя бы есть ли какие-то открытые проекты, где можно посмотреть, как люди работают с этим представлением

AFAIR, где-то в недрах LLVM-gcc был сериализатор GIMPLE.
Sapienti sat!
Re[2]: Экспорт GIMPLE из gcc в избранное  новое    модер. 
От: FDSCvinj.ru fdsc.narod.ru
Дата: 28.05.08 12:50
Здравствуйте, Cyberax, Вы писали:

C>А что именно собираетесь с ним делать?


Обрабатывать

FDS>>Если нет, то хотя бы есть ли какие-то открытые проекты, где можно посмотреть, как люди работают с этим представлением

C>AFAIR, где-то в недрах LLVM-gcc был сериализатор GIMPLE.

В gcc есть возможность сделать дамп, но он в C-like стиле, т.е. его надо парсить какими-то своими средствами, а не чем-то стандартным (не xml или json). Я так понимаю, вы именно про это, или нет?
Re[3]: Экспорт GIMPLE из gcc в избранное  новое    модер. 
От: unix_hater 
Дата: 28.05.08 12:58
Здравствуйте, FDSC, Вы писали:

FDS>Здравствуйте, Cyberax, Вы писали:


C>>А что именно собираетесь с ним делать?


FDS>Обрабатывать


FDS>>>Если нет, то хотя бы есть ли какие-то открытые проекты, где можно посмотреть, как люди работают с этим представлением

C>>AFAIR, где-то в недрах LLVM-gcc был сериализатор GIMPLE.

FDS>В gcc есть возможность сделать дамп, но он в C-like стиле, т.е. его надо парсить какими-то своими средствами, а не чем-то стандартным (не xml или json). Я так понимаю, вы именно про это, или нет?


А для чего именно нужно? Возможно подойдет GCCXML. Правда нужно учитывать то, что он скорее для С++ подойдет, чем для С, а для С++ он мало расскажет о шаблонах.
Re[4]: Экспорт GIMPLE из gcc в избранное  новое    модер. 
От: FDSCvinj.ru fdsc.narod.ru
Дата: 28.05.08 13:17
Здравствуйте, unix_hater, Вы писали:

_>А для чего именно нужно? Возможно подойдет GCCXML. Правда нужно учитывать то, что он скорее для С++ подойдет, чем для С, а для С++ он мало расскажет о шаблонах.


Это не подходит вроде
Насколько я понял, он не GIMPLE дампит, а дерево разбора самого языка
Re[3]: Экспорт GIMPLE из gcc в избранное  новое    модер. 
От: Cyberax 
Дата: 28.05.08 16:39
Здравствуйте, FDSC, Вы писали:

C>>А что именно собираетесь с ним делать?

FDS>Обрабатывать
Так может проще новый проход добавить в сам GCC?

C>>AFAIR, где-то в недрах LLVM-gcc был сериализатор GIMPLE.

FDS>В gcc есть возможность сделать дамп, но он в C-like стиле, т.е. его надо парсить какими-то своими средствами, а не чем-то стандартным (не xml или json). Я так понимаю, вы именно про это, или нет?
Да, я про этот сериализатор.

Но я точно помню, что в LLVM по этому поводу тоже что-то было.
Sapienti sat!
Re[4]: Экспорт GIMPLE из gcc в избранное  новое    модер. 
От: FDSCvinj.ru fdsc.narod.ru
Дата: 29.05.08 11:47
Здравствуйте, Cyberax, Вы писали:

C>Так может проще новый проход добавить в сам GCC?


Это означает, работать полностью на C. Это совсем не хорошо, хочется, чтобы код можно было в дальнейшем использовать (с изменениями) не только для gcc. К тому же, писать на C довольно сложные вещи я просто не хочу.

Я так понял, что лучше всего разбираться с тем, как сам gcc дампит GIMPLE-представление, т.е. ничего более подходящего нет.
Re[5]: Экспорт GIMPLE из gcc в избранное  новое    модер. 
От: Cyberax 
Дата: 30.05.08 06:01
Здравствуйте, FDSC, Вы писали:

C>>Так может проще новый проход добавить в сам GCC?

FDS>Это означает, работать полностью на C. Это совсем не хорошо, хочется, чтобы код можно было в дальнейшем использовать (с изменениями) не только для gcc. К тому же, писать на C довольно сложные вещи я просто не хочу.
Можно и не только на С — в LLVM вполне успешно на С++ с GCC работают.

FDS>Я так понял, что лучше всего разбираться с тем, как сам gcc дампит GIMPLE-представление, т.е. ничего более подходящего нет.

Лучше работать со структурами данных в GCC.
Sapienti sat!