Size: a a a

Compiler Development

2020 May 11

СЛ

Сергей Лапынин... in Compiler Development
| {input.LA(1)==Ampersand}? macroAny crlfStmnt!

Вы не препроцессируете контент? Но тогда у вас не будет работать половина фич.
Тем более что на том же С при записи DECLARE_CALLBACK(a,b,c,d, void) - парсер должен падать по хорошему.
источник

АЗ

Алексей Запольский... in Compiler Development
Сергей, нет. Я пока тренируюсь на малых выражениях и скорость парсера нормальная. Надо было ускорить компиляцию грамматики и генерацию парсера. Там были неявные взаимные рекурсии в правилах, осталось от грамматики antlr4. Я их убрал, теперь компиляция+генерация несколько секунд. Теперь надо правильно сделать предикаты, для альтернатив. Да с дебагером застрял. Спасибо за последние советы. Щас покопаю. Удачи.
источник

RB

Rustem B. in Compiler Development
какой самый норм из существующих llvm codegen'ов есть в Rust
источник

M

MaxGraey in Compiler Development
Rustem B.
какой самый норм из существующих llvm codegen'ов есть в Rust
Что все вдруг осознали что LLVM неповоротный монстр который на 10% медленее с каждым релизом?
источник

RB

Rustem B. in Compiler Development
?
источник

M

MaxGraey in Compiler Development
источник

RB

Rustem B. in Compiler Development
https://c9x.me/compile/
ну не это же юзать
источник

M

MaxGraey in Compiler Development
А почему сразу QBE? Есть же GCC, Cranelift для экспериментов. Последний кстати готовиться как альтернативный кодогенератор для Rust
источник

RB

Rustem B. in Compiler Development
хммм 🤔
источник

M

MaxGraey in Compiler Development
Rustem B.
хммм 🤔
источник

p

polunin.ai in Compiler Development
а что тогда посоветуете брать в качестве бекенда? пока не дошел до него, но через пару месяцев встанет этот вопрос.
источник

M

MaxGraey in Compiler Development
Так clif это и есть бэкенд)
источник

M

MaxGraey in Compiler Development
Со своим IR кстати. Который не сильно кореллирует с llvm ir, разве что оба в ssa форме представляются
источник

p

polunin.ai in Compiler Development
>Standalone JIT-style runtime for WebAssembly
источник

p

polunin.ai in Compiler Development
а есть что-то не-wasm?
источник

M

MaxGraey in Compiler Development
polunin.ai
>Standalone JIT-style runtime for WebAssembly
И в том числе
источник

M

MaxGraey in Compiler Development
clif может как работать как в JIT так и AOT режиме. LLVM кстати тоже
источник

p

polunin.ai in Compiler Development
меня смущает что он находится в репозитории wasmtime. значит там основной пор будет делаться все-таки на wasm
источник

M

MaxGraey in Compiler Development
только clif изначально затачивался под JIT а потом уже под AOT, А в LLVM все наоборот
источник

AT

Alexander Tchitchigi... in Compiler Development
polunin.ai
меня смущает что он находится в репозитории wasmtime. значит там основной пор будет делаться все-таки на wasm
Для WASM там просто фронтенд сразу написан. Всему остальному Cranelift глубоко фиолетово откуда IR был сгенерирован — WASM, Rust или просто руками.
источник