Skip to content

Next#13

Merged
magistermaks merged 22 commits intomasterfrom
next
Apr 4, 2026
Merged

Next#13
magistermaks merged 22 commits intomasterfrom
next

Conversation

@magistermaks
Copy link
Copy Markdown
Member

  • sections now use MemoryFlags, this new object unifies all the previously used flags (Elf section & segment and mprotect access flags)
  • SegmendetedBuffer::add_linkage() no longer accepts the shift parameter, and uses Linkage::Type that bundles the linking function and ELF relocation enumeration. The linking functions are now defined in linkage.cpp
  • to_elf() now returns ElfModel (not ElfFile), the typical execute(), save(), etc. functions were moved to ObjectFile. ObjectFile can be obtained from ElfModel by calling .bake().
  • Updated VSTL
  • TASML now accepts embed statements that allow for inlining of the binary data contained in other files.
  • Label class now always create a shared-copy when constructed from other strings. You can still create a non-owning Label using Label::of(const char*) and Label::of(const std::string_view&). This was done in order to fix memory issues.
  • x86 writer now verifies if the given immediate can be encoded into the available space.
  • Added support for DWARF abbreviations (DwarfAbbreviations) and information (DwarfInformation) entries.
  • Added support for encoding DWARF line number information (DwarfLineEmitter), this is made available to TASML users using the source directive.
  • Added support for exporting symbols. When a ELF object file is created those symbols may then be linked to using standard linkers (e.g. calling ASMIO created functions from C with GCC). A symbol can be exported in TASML using the export directive. When using a writer this can be done using export_symbol().
  • Added support for importing symbols. In TASML you can import a symbol using the import directive. When using a writer this can be done using import_symbol().
  • Added new utilities, Pool<T> a vector-like dynamic container that ensures element pointers stay constant, refcnt.hpp that implements new/delete style memory functions with reference counting support, and a few others.

@magistermaks magistermaks merged commit de8ece8 into master Apr 4, 2026
1 check 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.

1 participant