Size: a a a

Compiler Development

2021 May 13

AT

Alexander Tchitchigi... in Compiler Development
В каком контексте? Cranelift в натив генерит же.
источник

ZB

Zalim Bashorov in Compiler Development
cranelift кажется не про это, но в релизной сборке мы собираемся применять внешние тулы для доп оптимизаций
источник

D

Danya in Compiler Development
Я спрашиваю)
источник

Т8

Т-34 85 in Compiler Development
bigint?
источник

ZB

Zalim Bashorov in Compiler Development
binaryen
источник

K

Kitsu in Compiler Development
так вроде он и в васм умеет
источник

AT

Alexander Tchitchigi... in Compiler Development
Так он и в JS есть. 🤷‍♀️
источник

MO

Mar Ort in Compiler Development
ну int32 вроде влезает, даже int52 тут напоминают, а все что не влезает (где собственно потеря точности и возникает), используется второй float64
источник

AT

Alexander Tchitchigi... in Compiler Development
Он из Wasm генерит натив. 🤦‍♀️
источник

SR

Sergey Rubanov in Compiler Development
👍
источник

MO

Mar Ort in Compiler Development
https://github.com/JetBrains/kotlin/blob/master/libraries/stdlib/js-ir/runtime/long.kt
Вот здесь можете посмотреть, как long устроен
источник

K

Kitsu in Compiler Development
Чегот мне казалось там и кодген для wasm был, ну окей. В любом случае cranelift сам не привязан к wasm, там же свой IR
источник

AT

Alexander Tchitchigi... in Compiler Development
Да. Для Wasm просто в комплекте поставляют готовый фронт.
источник

MO

Mar Ort in Compiler Development
у него wasm с другой стороны подключается
источник

AT

Alexander Tchitchigi... in Compiler Development
Именно. 👍
источник

K

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

ZB

Zalim Bashorov in Compiler Development
когда есть более одного менеджера памяти и могут появляться кросс ссылки без кооперции между менеджерами будут просиходить утечки
источник

M

MaxGraey in Compiler Development
подозреваю как то так:
https://github.com/dcodeIO/Long.js

BigInt слишком медленный и не поддерживается старыми браузерами и IE10
источник

SR

Sergey Rubanov in Compiler Development
можно еще просто посто юзать x | 0 как в asm.js и тогда будет работа с интами андерхуд
источник

MO

Mar Ort in Compiler Development
ровно так int32 и работает 😏
источник