Реализация IR для очень небольшого (но легко расширяемого) набора инструкций формата SPIR-V и набора функций для манипуляции с этим IR. Стремился сделать библиотеку, с помощью которой написание оптимизации упростится до перевода псевдокода на вызов моих функций.
Чтобы использовать эту библиотеку достаточно скачать все файлы и написать в свой файл #include "headers.h"
. Линковать ничего не надо. Комплируется как gcc
, так и cl
.
Написано с использаванием c99
, поэтому если вы пишете под виндой, убедитесь что у вас новый cl
с поддержкой c99
.
Библиотека использует следующие системные хедеры:
#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
#include <stdbool.h>
#include <string.h>
Доступные функции и их описания (на английском) находятся в файле headers.h
.
Пример использования в main.c
.
p.s. предыдущий репозиторий с курсачем я удалил, потому что его пришлось целиком переписывать. Названия коммитов отсутствуют по той же причине