Size: a a a

2019 December 08

JC

Julian =) Coffee in archlinux_ru
𝙼𝚛. 𝙱𝚘𝚠𝚕𝚎𝚛 𝙷𝚊𝚝
Грубо говоря с LLVM написать компилятор может любой школьник
Ты видел, как выглядит LLVM IR?
источник

АН

Артемий НаиковскИй in archlinux_ru
Окей, а что делает llvm с программами? Вот есть gcc, он собирает код в бинарник, а чо llvm даёт
источник

𝙼

𝙼𝚛. 𝙱𝚘𝚠𝚕𝚎𝚛 𝙷𝚊𝚝 in archlinux_ru
Сначала собирается в байт-код
источник

𝙼

𝙼𝚛. 𝙱𝚘𝚠𝚕𝚎𝚛 𝙷𝚊𝚝 in archlinux_ru
А потом в натив
источник

I

Ivan in archlinux_ru
фух, остановил кровь (жду радостных отзывов от того что я выживу)
источник

𝙼

𝙼𝚛. 𝙱𝚘𝚠𝚕𝚎𝚛 𝙷𝚊𝚝 in archlinux_ru
Ivan
фух, остановил кровь (жду радостных отзывов от того что я выживу)
Ты слевейнин
источник

JC

Julian =) Coffee in archlinux_ru
Артемий НаиковскИй
Окей, а что делает llvm с программами? Вот есть gcc, он собирает код в бинарник, а чо llvm даёт
Принимает на вход программу на промежутночном языке, а выдает бинарь.
источник

𝙼

𝙼𝚛. 𝙱𝚘𝚠𝚕𝚎𝚛 𝙷𝚊𝚝 in archlinux_ru
Так что можешь помирать
источник

I

Ivan in archlinux_ru
источник

I

Ivan in archlinux_ru
сука ты
источник

VK

Vladislav K. in archlinux_ru
Артемий НаиковскИй
Окей, а что делает llvm с программами? Вот есть gcc, он собирает код в бинарник, а чо llvm даёт
ллвм собирает бинарник из кода
источник

VK

Vladislav K. in archlinux_ru
возможно даже линкует
источник

АН

Артемий НаиковскИй in archlinux_ru
Julian =) Coffee
Принимает на вход программу на промежутночном языке, а выдает бинарь.
Так, примерно ясно
источник

JC

Julian =) Coffee in archlinux_ru
Только gcc принимает код на Си (или паре других языков)
А у llvm очень низкоуровневый язык, похожий на ассемблер.
источник

𝙼

𝙼𝚛. 𝙱𝚘𝚠𝚕𝚎𝚛 𝙷𝚊𝚝 in archlinux_ru
Байт-код проще говоря
источник

JC

Julian =) Coffee in archlinux_ru
Байткод это другое
источник

АН

Артемий НаиковскИй in archlinux_ru
Julian =) Coffee
Только gcc принимает код на Си (или паре других языков)
А у llvm очень низкоуровневый язык, похожий на ассемблер.
Компилятор для ассемблера🤣
источник

JC

Julian =) Coffee in archlinux_ru
Ассемблер != бинарный код
источник

АН

Артемий НаиковскИй in archlinux_ru
Julian =) Coffee
Ассемблер != бинарный код
Знаю
источник

JC

Julian =) Coffee in archlinux_ru
Типо ассемблер это человекочитаемый бинарный код, а потом LLVM превращает его уже в нечеловекочитаемый байт-код.
А потом получившийся байткод компилирует бинарь под любую платформу.
источник