Skip to content

XML: LLVM + Typecheck (by Michael Gavrilenko, Danila Rudnev-Stepanyan and Daniel Vlasenko)#52

Merged
Kakadu merged 85 commits intoKakadu:masterfrom
qrutyy:feat/llvm
Mar 11, 2026
Merged

XML: LLVM + Typecheck (by Michael Gavrilenko, Danila Rudnev-Stepanyan and Daniel Vlasenko)#52
Kakadu merged 85 commits intoKakadu:masterfrom
qrutyy:feat/llvm

Conversation

@spisladqo
Copy link
Contributor

@spisladqo spisladqo commented Feb 16, 2026

Функциональность:

  • Добавил генерацию в IR LLVM всего, что было ранее: lib/backend/codegen_llvm.ml
  • Добавил type check + inference на основе алгоритма Реми с уровнями: lib/middleend/infer.ml

Тесты:

  • Добавил для кодгена IR LLVM все тесты, которые были для кодгена RISC-V (many_tests/codegen_llvm.t, llvm_tweaks.t, gc_llvm.t)
  • Для тайпчека написал unit-тесты (many_tests/unit/infer.ml) и добавил cram-тесты manytests (many_tests/infer.t)

and don't call function with uninitialized parameters
fixed: add rt_init and collect, calls to 0-arg funs, alloca dereference, offset in tuple elem loading, rt_init in rt, refactor code
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Zanuda-linter report

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Zanuda-linter report

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Zanuda-linter report

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Zanuda-linter report

@github-actions
Copy link

Документация и тестовое покрытие (83.56%) должны скоро появиться.

https://kakadu.github.io/comp25/docs/XML

https://kakadu.github.io/comp25/cov/XML

2026-03-11 21:57

Email Commits Files Insertions Deletions Total Lines
vlasenko.daniil26@gmail.com 84 64 11274 5882 17156
qrutyq@gmail.com 52 58 7806 4255 12061
dabzelos@gmail.com 26 54 4661 1927 6588
----- ------- ----- ---------- --------- ---------

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Zanuda-linter report

@github-actions
Copy link

Linter report from 2026-03-11 21:58, for mini language XML

Alert zanuda-linter: Using mutable data structures for teaching purposes is usually discouraged. Replace Hashtables by standard tree-like maps or consider Hash-Array Mapped Tries (HAMT). Use mutable `ref`erences and mutable structure fields only if it is really required. In all places where it is needed indeed, describe in a comment why it is needed there.

@spisladqo
Copy link
Contributor Author

Поднял покрытие до 80+

@Kakadu Kakadu merged commit dac5f3f into Kakadu:master Mar 11, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants