Выложил лекцию по llvm-snippy. Настало время рассказать о моём лучшем проекте на моём канале.
Английская версия: https://youtu.be/gomtQMGOFF8
Русская версия и качество не хуже: https://rutube.ru/video/18e1a8bfca1d9e2979d8b8a631e68207
Документация: https://llvm-snippy.github.io/llvm-snippy
#snippy
Английская версия: https://youtu.be/gomtQMGOFF8
Русская версия и качество не хуже: https://rutube.ru/video/18e1a8bfca1d9e2979d8b8a631e68207
Документация: https://llvm-snippy.github.io/llvm-snippy
#snippy
YouTube
LLVM-snippy: An Instruction Sequence Generator. Part 1: Overview
In this lecture, I introduce llvm-snippy -- an LLVM-based instruction sequence generator for low-level verification. We start with the basic problem: how to verify processor models against an ISA specification. Then we look at why ad hoc random instruction…
❤🔥31👍27🔥12🤯3❤2👎2
У llvm-snippy теперь есть DOI.
Мы добавили в репозиторий citation metadata и заархивировали проект на Zenodo:
https://doi.org/10.5281/zenodo.20969925
Если вы используете llvm-snippy в статьях, отчётах, диссертациях, прототипах, исследовательских проектах или просто в воспроизводимых экспериментах, пожалуйста, ссылайтесь на него.
Это важно не только как формальная благодарность авторам. Для нас, как команды разработки, ссылки -- это способ понять, где и как инструмент реально используется. Так мы сможем находить ваши работы, смотреть на новые сценарии применения, оценивать результаты и, возможно, что-то забирать обратно в развитие проекта.
Репозиторий:
https://github.com/LLVM-Snippy/llvm-snippy
Документация:
https://llvm-snippy.github.io/llvm-snippy
#snippy #official
Мы добавили в репозиторий citation metadata и заархивировали проект на Zenodo:
https://doi.org/10.5281/zenodo.20969925
Если вы используете llvm-snippy в статьях, отчётах, диссертациях, прототипах, исследовательских проектах или просто в воспроизводимых экспериментах, пожалуйста, ссылайтесь на него.
Это важно не только как формальная благодарность авторам. Для нас, как команды разработки, ссылки -- это способ понять, где и как инструмент реально используется. Так мы сможем находить ваши работы, смотреть на новые сценарии применения, оценивать результаты и, возможно, что-то забирать обратно в развитие проекта.
Репозиторий:
https://github.com/LLVM-Snippy/llvm-snippy
Документация:
https://llvm-snippy.github.io/llvm-snippy
#snippy #official
Zenodo
LLVM-snippy
LLVM-snippy is an LLVM-based instruction sequence generator for low-level verification. It generates randomized machine-code test programs from configurable inputs and reuses LLVM target descriptions and code-generation infrastructure. The project is primarily…
👍48🔥16❤5👏1
Выложил лекцию Анастасии Черниковой о практическом внедрении llvm-snippy в верификацию аппаратуры на примере открытого RISC-V ядра Ibex.
https://youtu.be/fSsq5mm3I40
Эта лекция -- настоящее путешествие по применению llvm-snippy в живой DV-инфраструктуре. Она затрагивает вопросы: как встроиться в существующий маршрут с riscv-dv, как написать хороший враппер и как доработать загрузчик и обработчики прерываний. Всё изложение построено вокруг поэтапной доработки сценариев генерации ради достижения функционального покрытия.
Лекцию можно смотреть и отдельно от первой части: весь необходимый контекст даётся по ходу. Но вместе они хорошо показывают две стороны llvm-snippy: внутреннее устройство инструмента и его практическое применение в реальной задаче верификации.
Русскоязычный вариант: https://rutube.ru/video/27414410f66e3d36e4733c9390062304
#snippy
https://youtu.be/fSsq5mm3I40
Эта лекция -- настоящее путешествие по применению llvm-snippy в живой DV-инфраструктуре. Она затрагивает вопросы: как встроиться в существующий маршрут с riscv-dv, как написать хороший враппер и как доработать загрузчик и обработчики прерываний. Всё изложение построено вокруг поэтапной доработки сценариев генерации ради достижения функционального покрытия.
Лекцию можно смотреть и отдельно от первой части: весь необходимый контекст даётся по ходу. Но вместе они хорошо показывают две стороны llvm-snippy: внутреннее устройство инструмента и его практическое применение в реальной задаче верификации.
Русскоязычный вариант: https://rutube.ru/video/27414410f66e3d36e4733c9390062304
#snippy
YouTube
LLVM-snippy: An Instruction Sequence Generator. Part 2: Ibex
This lecture by Anastaiya Chernikova is a real journey through applying llvm-snippy in a live DV infrastructure. It covers questions such as how to integrate into an existing flow with riscv-dv, how to write a good wrapper, and how to improve the loader and…
👍44❤20🔥16❤🔥3🤯1😍1
Сделал свой канал в Max публичным.
Теперь буду туда всё дублировать:
https://max.ru/channel_cpp_lects_rus
И появились комментарии.
#official
Теперь буду туда всё дублировать:
https://max.ru/channel_cpp_lects_rus
И появились комментарии.
#official
MAX
C++ and other lectures
Педагогический канал для выкладки записей лекций и стримов
👎218💩119🤮68👍67✍14🔥14❤11🗿7🥱6🫡3🦄2
Выложили моё видео на C++ Russia 2026, посвящённое выводу типов, его тонкой связи с перегрузкой и некоторым моим мечтам о языке.
https://youtu.be/ebyXav1JAEQ?is=rAumvFRI4sFTRFPQ
00:00 Intro: немного болтовни
03:20 Начало. Напоминаю про семантические процессы
06:10 Мечта про инференс в стиле Хиндли-Милнера и как перегрузка ломает унификацию.
11:58 Почему мы любим перегрузку и как мы пишем множества перегрузки?
16:54 Сложность разрешения перегрузки: частичный порядок.
24:28 Перегрузка связана с выводом типов. Правила одношаговой унификации (дедукции) типов.
29:24 Немного про CTAD и пара безумных примеров.
35:28 Мечта про вывод по всем путям. Комбинаторные взырывы и non-deduced context.
38:35 Мечта про "Семантически неограниченный C++".
42:04 Раскрытие секрета почему у нас всё так, как оно есть. И дальше вопросы.
Слайды: https://sourceforge.net/projects/cpp-lects-rus/files/conference-talks/deduction.pdf/download
#conference
https://youtu.be/ebyXav1JAEQ?is=rAumvFRI4sFTRFPQ
00:00 Intro: немного болтовни
03:20 Начало. Напоминаю про семантические процессы
06:10 Мечта про инференс в стиле Хиндли-Милнера и как перегрузка ломает унификацию.
11:58 Почему мы любим перегрузку и как мы пишем множества перегрузки?
16:54 Сложность разрешения перегрузки: частичный порядок.
24:28 Перегрузка связана с выводом типов. Правила одношаговой унификации (дедукции) типов.
29:24 Немного про CTAD и пара безумных примеров.
35:28 Мечта про вывод по всем путям. Комбинаторные взырывы и non-deduced context.
38:35 Мечта про "Семантически неограниченный C++".
42:04 Раскрытие секрета почему у нас всё так, как оно есть. И дальше вопросы.
Слайды: https://sourceforge.net/projects/cpp-lects-rus/files/conference-talks/deduction.pdf/download
#conference
YouTube
Константин Владимиров — Перегрузка и вывод: проблемы жизни вместе
Подробнее о конференции C++ Russia: https://jrg.su/nbdpQS
— —
Вывод типов может потребовать разрешения перегрузки. Но и разрешение перегрузки может потребовать вывода типов. Эти два механизма очень сильно связаны в языке. Перегрузка принципиально мешает выводу…
— —
Вывод типов может потребовать разрешения перегрузки. Но и разрешение перегрузки может потребовать вывода типов. Эти два механизма очень сильно связаны в языке. Перегрузка принципиально мешает выводу…
🔥73👍27❤20❤🔥1🙏1
Всем привет. Отчётный стрим на boosty проведу в воскресенье, 26 июля в 20 по Москве.
https://boosty.to/cpp_lects_rus
Уровень доступа: студент и выше.
Обсудим прогресс по книге, прошедшую конференцию C++ Russia, предстоящую Zero Cost Conf и многое другое.
#boosty
https://boosty.to/cpp_lects_rus
Уровень доступа: студент и выше.
Обсудим прогресс по книге, прошедшую конференцию C++ Russia, предстоящую Zero Cost Conf и многое другое.
#boosty
👍34❤12🔥5❤🔥1🥰1🙏1
К слову о разговорных жанрах. Выложили интервью со мной на C++ Russia. Вроде неплохо получилось.
https://youtu.be/jeX96GPYSlI?is=kwLq3K1Qtvy64oE1
#conference
https://youtu.be/jeX96GPYSlI?is=kwLq3K1Qtvy64oE1
#conference
YouTube
Интервью с Константином Владимировым
Подробнее о конференции C++ Russia: https://jrg.su/nbdpQS
— —
Говорим о компиляторах, практике и RISC-V
Спикер: Константин Владимиров
Ведущий: Виталий Аксенов
— —
Говорим о компиляторах, практике и RISC-V
Спикер: Константин Владимиров
Ведущий: Виталий Аксенов
🔥66👍30❤12🐳2👏1🙏1
И снова пятничный зачилл.
Подумайте вот о таком коде. Сначала не открывая годболт. Что скажете?
Теперь откройте ссылку и сверьте ощущения.
https://godbolt.org/z/6rfGzx991
Кто прав — gcc или clang? Или... оба? ))) Ссылки на стандарт обязательны. За нейронку — штрафные баллы ))
Пример восхитителен не глубокими причинами в стандарте, а тем насколько всё тупо. В общем смешной кейс на пятничный вечер.
#questions
Подумайте вот о таком коде. Сначала не открывая годболт. Что скажете?
struct T { const int &p; };
void foo() { T t{0}; } // ???
void bar() { T t(0); } // ???Теперь откройте ссылку и сверьте ощущения.
https://godbolt.org/z/6rfGzx991
Кто прав — gcc или clang? Или... оба? ))) Ссылки на стандарт обязательны. За нейронку — штрафные баллы ))
Пример восхитителен не глубокими причинами в стандарте, а тем насколько всё тупо. В общем смешной кейс на пятничный вечер.
#questions
🥴24❤12🤔3❤🔥1👏1🎉1
Выступил на C++ ZCC. Видео выложу по мере появления. А пока мне тут скинули бинго по моим докладам на конференциях.
Не знаю только при чем тут userver.
#official
Не знаю только при чем тут userver.
#official
👍29❤6
Выложили наш с Лизой доклад на ZCC. Спасибо организаторам за оперативность.
https://youtu.be/ohYtMHBXLvM?is=lwvD3swa1fLQOPff
00:00 Начало и немного о мире стабильного ABI: немного C и ассемблера
10:35 Про ABI в C++ и генерализованную перегрузку сущностей
16:02 Появление Лизы и много компиляторной магии
35:20 Возвращение меня и история про static chain register
40:10 Ответы на вопросы.
#conference
https://youtu.be/ohYtMHBXLvM?is=lwvD3swa1fLQOPff
00:00 Начало и немного о мире стабильного ABI: немного C и ассемблера
10:35 Про ABI в C++ и генерализованную перегрузку сущностей
16:02 Появление Лизы и много компиляторной магии
35:20 Возвращение меня и история про static chain register
40:10 Ответы на вопросы.
#conference
YouTube
Что C++-программист должен знать про ABI / Константин Владимиров и Елизавета Носкова
На конференции Back to Back выступили коллеги из Синтакора: Константин Владимиров, начальник отдела компиляторов и средств разработки, и Елизавета Носкова, старший инженер-программист.
Ребята посвятили свой доклад тонким и неочевидным вопросам ABI: точно…
Ребята посвятили свой доклад тонким и неочевидным вопросам ABI: точно…
🔥36👍22❤6🙏1🥴1