Size: a a a

WebAssembly — русскоговорящее сообщество

2020 December 16

AF

Alexey F. in WebAssembly — русскоговорящее сообщество
это же поинтер
источник

f

folex in WebAssembly — русскоговорящее сообщество
Alexey F.
это же поинтер
это не поинтер, это число
источник

f

folex in WebAssembly — русскоговорящее сообщество
по смыслу это битовая маска
источник

AF

Alexey F. in WebAssembly — русскоговорящее сообщество
а я думал это как раз поинтер на результат
источник

AF

Alexey F. in WebAssembly — русскоговорящее сообщество
ааа
источник

f

folex in WebAssembly — русскоговорящее сообщество
Товарищи в Cheerp отдельно проходятся llvm-ом чтобы все i64 превратить в i32x2 :( Удивительно что у меня в браузере и так это без проблем работает, может wasm-pack как-то помогает
источник

AF

Alexey F. in WebAssembly — русскоговорящее сообщество
offset - это поинтер на результат
источник

f

folex in WebAssembly — русскоговорящее сообщество
Alexey F.
offset - это поинтер на результат
offset это поинтер на сообщение, в расте он msg_ptr. Вообще это функция "заллогируй мне сообщение msg с таким-то level, target", результата она не возвращает
источник

AF

Alexey F. in WebAssembly — русскоговорящее сообщество
да, это известная проблема с импортом функций с 64-тными параметрами
источник

AF

Alexey F. in WebAssembly — русскоговорящее сообщество
скорее всего wasm-pack как-то полифилит
источник

でゲソ in WebAssembly — русскоговорящее сообщество
folex
Мхм, ну там на стороне TS/JS вообще any везде

type LogImport = {
   log_utf8_string: (level: any, target: any, offset: any, size: any) => void
}
ну вот есть большой шанс что у них финальные размеры параметров и не совпали. и я так понимаю ошибка со стороны ts как раз сгенерировалась
источник

AF

Alexey F. in WebAssembly — русскоговорящее сообщество
でゲソ
ну вот есть большой шанс что у них финальные размеры параметров и не совпали. и я так понимаю ошибка со стороны ts как раз сгенерировалась
со стороны VM
источник

f

folex in WebAssembly — русскоговорящее сообщество
でゲソ
ну вот есть большой шанс что у них финальные размеры параметров и не совпали. и я так понимаю ошибка со стороны ts как раз сгенерировалась
target: number и target: BigInt не помогло.

В целом я могу поменять target на i32, ничего страшного, пока всё умещается и в 32.
источник

f

folex in WebAssembly — русскоговорящее сообщество
бОльшая проблема в том что passStringToWasm0, сгенерированный васм-паком (или биндгеном?) не пишет ничего в память васма :(
источник

f

folex in WebAssembly — русскоговорящее сообщество
при запуске из nodejs 14 & 15, по крайней мере
источник

AF

Alexey F. in WebAssembly — русскоговорящее сообщество
folex
target: number и target: BigInt не помогло.

В целом я могу поменять target на i32, ничего страшного, пока всё умещается и в 32.
i64 в JS нет
источник

SR

Sergey Rubanov in WebAssembly — русскоговорящее сообщество
но есть BigInt (правда BigInt <-> i64 еще не заимплеменчен в Сафари)
источник

AF

Alexey F. in WebAssembly — русскоговорящее сообщество
Sergey Rubanov
но есть BigInt (правда BigInt <-> i64 еще не заимплеменчен в Сафари)
ну, кстати это прикольно
источник

f

folex in WebAssembly — русскоговорящее сообщество
Я в целом не уверен, стоит ли ожидать от wasm-pack build --target bundler работы под nodejs, но с wasm-pack build --target nodejs всё разваливается еще раньше
источник

でゲソ in WebAssembly — русскоговорящее сообщество
Sergey Rubanov
но есть BigInt (правда BigInt <-> i64 еще не заимплеменчен в Сафари)
так у него трабла не в браузере
источник