Size: a a a

Compiler Development

2020 June 27

AN

Alexander Nasonov in Compiler Development
Немного оффтопик, но судя по этому документу, новое поколение железячников решило не заморачиваться с денормалз, даже если это такой маленький тип, как bfloat16.
источник

BD

Berkus Decker in Compiler Development
Alexander Nasonov
Немного оффтопик, но судя по этому документу, новое поколение железячников решило не заморачиваться с денормалз, даже если это такой маленький тип, как bfloat16.
в bfloat16 денормалы и сувать то особо некуда
источник

AN

Alexander Nasonov in Compiler Development
источник

AN

Alexander Nasonov in Compiler Development
В семь бит мантиссы особо ничего не засунешь, в независимости от того, 1. перед ними или 0.
источник

C

Constantine in Compiler Development
https://github.com/vtil-project/VTIL-Core

VTIL (Virtual-machine Translation Intermediate Language) Project is a set of tools that can be used for binary deobfuscation and devirtualization.

The main difference between VTIL and other optimizing compilers such as LLVM is that it has an extremely versatile IL that makes it trivial to lift from any architecture including stack machines. Since it is built for translation, VTIL does not abstract away the native ISA and keeps the concept of the stack, physical registers, and the non-SSA architecture of a general-purpose CPU as is. Native instructions can be emitted in the middle of the IL stream and the physical registers can be addressed from VTIL instructions freely.
🧐
источник

К

Константин in Compiler Development
MaxGraey
GC не модный до тех пор как не придется работать с рекурсивынми структурами, а после такой работы даже в C++ его внедряют с большим удовольствием и облегчением, например так поступили внутри движка Crome при работы с DOM объектами)
https://v8.dev/blog/high-performance-cpp-gc
Я вот даже GC сейчас пытаюсь выпилить.
в JS это конечно сложно, но как раз такая проблема сложилась
источник

К

Константин in Compiler Development
У меня есть маленький объект Scope, которые создается на основе Object
источник

К

Константин in Compiler Development
Так как это горячий метод после недо-jit, то делать реллокации тупо каждый вызов (что делалось раньше)
источник

К

Константин in Compiler Development
НО, есть другая проблема - он ссылается внутри на Object, и если он помер, а Scope останется - то GC его не дропнет
источник

К

Константин in Compiler Development
У меня так сейчас 3000 объектов потенциально висящих
источник

К

Константин in Compiler Development
Вот что делат?
источник

M

MaxGraey in Compiler Development
@eX_gd ты бы ввел в курс дела, рассказал про проект которым занимаетесь
источник

К

Константин in Compiler Development
Я из awayfl/awayjs, мы гоним мертвый влеш в html5
источник

К

Константин in Compiler Development
источник

К

Константин in Compiler Development
есть вот такая avm2, с которой вечные проблемы.
as2 полностью стековый, без классов, и там вообще пофигу, ас3 геморойный
источник

К

Константин in Compiler Development
И самая тупая проблема - это выполнение базового кода из флешек
источник

К

Константин in Compiler Development
По этому мы его гоним через такой огромный JIT компилятор на лету
источник

К

Константин in Compiler Development
источник

К

Константин in Compiler Development
Те обычно все упираются в рендер, а мы уперлись в JIT в большинстве случаев.
Особенно если там был бокс2Д:)
источник

К

Константин in Compiler Development
Проблема конечно же в большинстве случаев в самое виртуализации, особенно в сборке трайтов и сборке классов,методы которых как раз этот jit и генерит
источник