Repository navigation
0.22.0 --- the C library of an ok image (<arch>-openkal): ok_main, dlopen over libokld, dl_iterate_phdr, emulated TLS - #57
Merged
Conversation
…, the image's dl_iterate_phdr and emulated thread-local storage The target <arch>-openkal (openkal SPEC clause 12) holds no implementation; the loader binds the image's kal_* imports. port/src/image carries the entry, the dl* family over libokld (a placed image's kal_* names bound through a weak table of SURFACE.txt), dl_iterate_phdr over this image and every placed one, __emutls_get_address, and a prioritised constructor that brings the library up before a program's own. The specification and the implementations move to openkal 0.17; the builtins come from llvm.compiler-rt-builtins 22.1.8.6. examples/image-dlopen and image-early-constructor run through okrun on four systems in CI. Co-authored-by: speak-agent <248744407+speak-agent@users.noreply.github.com>
…one compiler runtime per build Co-authored-by: speak-agent <248744407+speak-agent@users.noreply.github.com>
…priority 1) Co-authored-by: speak-agent <248744407+speak-agent@users.noreply.github.com>
…), and a context's own is refused Co-authored-by: speak-agent <248744407+speak-agent@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The image form of openkal-musl for the target
<arch>-openkal(openkal SPEC clause 12; mcpp design 2026-10-26 part 2, §9).port/src/image:ok_main(the entry SPEC 12.2 names),dlopen/dlsym/dladdr/dlclose/dlerrorover libokld (a placed image'skal_*imports bound through a weak table generated from openkal's SURFACE.txt by build.mcpp; weak imports require no interface, SPEC 12.4),dl_iterate_phdrover this image and every placed one,__emutls_get_address, and a prioritised constructor that brings the library up before a program's constructors.musl-generated/{x86_64,aarch64}-openkal:wint_tisinton<arch>-unknown-none-elf, checked by okm_type_identity.c.examples/image-dlopen(eleven observations) andexamples/image-early-constructor: built once on Linux for both architectures by the mcpp under review, then run through okrun on linux-x86_64, linux-aarch64, macos-arm64 and windows-x86_64.Co-authored-by: speak-agent 248744407+speak-agent@users.noreply.github.com