Size: a a a

Compiler Development

2020 February 18

E

EgorBo in Compiler Development
просто если второе - то делать голословные заявления типа "ничем хорошим это не заканчивалось" слишком не ок
источник

E

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

E

EgorBo in Compiler Development
llvm может быть не дружественен к конкретной реализации гц, но сделать фронт с гц на ллмв можно
источник

MM

Mikhail Maltsev in Compiler Development
EgorBo
просто если второе - то делать голословные заявления типа "ничем хорошим это не заканчивалось" слишком не ок
Второе: есть несколько историй неудачных попыток сделать jit на llvm и их объяснения, почему он плохо для этого подходит
источник

E

EgorBo in Compiler Development
почитайте про Falcon
источник

E

EgorBo in Compiler Development
вроде успешно сущетсвует, есть свои клиенты
источник

MM

Mikhail Maltsev in Compiler Development
Да, про Azul я слышал
источник

E

EgorBo in Compiler Development
у ллвм фатальный недостаток - он медленный (решается слоенным джитом) и добавляет +50мб к приложению (но что может быть неважно) т.к. надо тягать сам ллвм
источник

E

EgorBo in Compiler Development
но если юзать ллвм как АОТ движок для управляемого языка - то и не нужно тягать ллвм за собой
источник

E

EgorBo in Compiler Development
проблем солвед
источник

I

Ioann_V in Compiler Development
Парни, а что будет быстрее, вызвать функцию, или зарезюмать корутину?
источник

I

Ioann_V in Compiler Development
вот ведь, как понимаю, можно делать тред пулы на функциях, а можно делать на участках кода. Вот в схх, появились корутины, как известно и я подумал, а может... тред пул на кусках кода?
источник

MM

Mikhail Maltsev in Compiler Development
EgorBo
почитайте про Falcon
Насколько я помню Sanjoy Das из Azul. Довольно много коммитил в llvm. Т.е. без доработки самого llvm там не обошлось
источник

I

Ioann_V in Compiler Development
или я вообще куда то не туда гляжу? Чисто интересно, то это или не то. Не мастер корутин, да.
источник

E

EgorBo in Compiler Development
Mikhail Maltsev
Насколько я помню Sanjoy Das из Azul. Довольно много коммитил в llvm. Т.е. без доработки самого llvm там не обошлось
так работает опен сорс, да. из ниоткуда ничего не рождается
источник

E

EgorBo in Compiler Development
хотя у нас был бэк еще до того как там были контрибуты от Азул. Мы юзаем только пасс установки сейфпоинтов (у нас раньше был свой)
источник

E

EgorBo in Compiler Development
вернее не свой, а мы тупо сейфпоинты при генерации ллвм эмитили, а это плохо для оптимизаций, их надо после оптимизаций вставлять
источник

MM

Mikhail Maltsev in Compiler Development
Ioann_V
Парни, а что будет быстрее, вызвать функцию, или зарезюмать корутину?
Resume корутины реализуется через вызов функции
источник

I

Ioann_V in Compiler Development
Mikhail Maltsev
Resume корутины реализуется через вызов функции
только? Или еще что-то сверху?
источник

MM

Mikhail Maltsev in Compiler Development
Сверху ещё то, что доступ к локальным переменным, переживающим suspend будет идти через указатель.
источник