Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/openkal-compat.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ env:
# run if this drifts from pins.toml. See the comment beside `mcpp` in
# pins.toml for why this pin, not just validate.yml's, is gated by the
# index floor.
MCPP_VERSION: "2026.10.31.1"
MCPP_VERSION: "2026.11.2.1"
# CROSS-VALIDATION BEFORE A RELEASE, NOT AFTER IT.
#
# Empty in an ordinary run, so this measurement keeps using the RELEASED
Expand Down
6 changes: 5 additions & 1 deletion .github/workflows/validate.yml
Original file line number Diff line number Diff line change
Expand Up @@ -443,7 +443,11 @@ env:
#
# 2026.10.31.1 (mcpp-community/mcpp#869): `features` in the machine output,
# and the floor openkal-platform states since 0.18.0 (2026.10.30.1).
MCPP_VERSION: "2026.10.31.1"
#
# 2026.11.2.1 (mcpp-community/mcpp#882): a dependency's patches and a
# dependency embedded in its consumer -- the floor openkal-musl 0.26.0
# states, since it embeds compat.mimalloc.
MCPP_VERSION: "2026.11.2.1"

jobs:
lint:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/xpkgindex-update.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ concurrency:

env:
PYTHONUTF8: '1'
MCPP_VERSION: '2026.10.31.1'
MCPP_VERSION: '2026.11.2.1'
# CROSS-VALIDATION BEFORE A RELEASE: a candidate that needs an mcpp newer
# than the pin (its package states the floor) is built with mcpp built from
# this branch of mcpp-community/mcpp, as openkal-compat.yml measures with it.
Expand Down
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,12 @@

### Added

- **openkal-musl 0.26.0、openkal-llvm-runtime 0.17.0。** openkal-musl 的分配器为嵌入的 mimalloc 3.6.1(`malloc-mimalloc`,默认;
`malloc-mallocng` 保留 musl 自己的),匿名内存建在 `openkal.region` 上,定位读写不持锁,八个字符串函数按向量处理,普通互斥锁按
glibc 的方式等待。openkal-llvm-runtime 建在其上(裸机选 mallocng),PE 与 Mach-O 上 `thread_local` 的析构读到自己的变量
(emutls 在最后一轮才释放),并带 L2 的工作负载对比(`bench/`)。测试成员 `openkal-musl`、`openkal` 随之移动。CI 的 mcpp 移到
2026.11.2.1:openkal-musl 0.26.0 以 `embed` 嵌入 compat.mimalloc,并陈述 `mcpp >= 2026.11`。GLOBAL 为 GitHub 标签归档,CN 为
GitCode `mcpp-res` 镜像,sha256 两处一致。
- **mcpplibs.mwrap.mimalloc 3.6.1(新包)。** mimalloc-m:以 C++23 模块(`import mcpplibs.mwrap.mimalloc;`)使用 compat.mimalloc
3.6.1。`<mimalloc.h>` 的函数、堆、arena、子进程、选项与 STL 分配器以上游的全局名导出;`.stats`、`.profile` 两个子模块对应
`<mimalloc-stats.h>`、`<mimalloc-profile.h>`;上游的 `static inline` 辅助函数以同名适配在 `mcpplibs::mwrap::mimalloc`;值宏在
Expand Down
21 changes: 21 additions & 0 deletions pkgs/o/openkal-llvm-runtime.lua
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,13 @@ package = {

xpm = {
linux = {
["0.17.0"] = {
url = {
GLOBAL = "https://github.com/mcpplibs/openkal-llvm-runtime/archive/refs/tags/0.17.0.tar.gz",
CN = "https://gitcode.com/mcpp-res/openkal-llvm-runtime/releases/download/0.17.0/openkal-llvm-runtime-0.17.0.tar.gz",
},
sha256 = "75d9fb8039de796fe8c447e7ecd6d849a5a343690f10ac08b447e2777f6abc93",
},
["0.16.15"] = {
url = {
GLOBAL = "https://github.com/mcpplibs/openkal-llvm-runtime/archive/refs/tags/0.16.15.tar.gz",
Expand Down Expand Up @@ -413,6 +420,13 @@ package = {
},
},
macosx = {
["0.17.0"] = {
url = {
GLOBAL = "https://github.com/mcpplibs/openkal-llvm-runtime/archive/refs/tags/0.17.0.tar.gz",
CN = "https://gitcode.com/mcpp-res/openkal-llvm-runtime/releases/download/0.17.0/openkal-llvm-runtime-0.17.0.tar.gz",
},
sha256 = "75d9fb8039de796fe8c447e7ecd6d849a5a343690f10ac08b447e2777f6abc93",
},
["0.16.15"] = {
url = {
GLOBAL = "https://github.com/mcpplibs/openkal-llvm-runtime/archive/refs/tags/0.16.15.tar.gz",
Expand Down Expand Up @@ -751,6 +765,13 @@ package = {
},
},
windows = {
["0.17.0"] = {
url = {
GLOBAL = "https://github.com/mcpplibs/openkal-llvm-runtime/archive/refs/tags/0.17.0.tar.gz",
CN = "https://gitcode.com/mcpp-res/openkal-llvm-runtime/releases/download/0.17.0/openkal-llvm-runtime-0.17.0.tar.gz",
},
sha256 = "75d9fb8039de796fe8c447e7ecd6d849a5a343690f10ac08b447e2777f6abc93",
},
["0.16.15"] = {
url = {
GLOBAL = "https://github.com/mcpplibs/openkal-llvm-runtime/archive/refs/tags/0.16.15.tar.gz",
Expand Down
21 changes: 21 additions & 0 deletions pkgs/o/openkal-musl.lua
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,13 @@ package = {

xpm = {
linux = {
["0.26.0"] = {
url = {
GLOBAL = "https://github.com/mcpplibs/openkal-musl/archive/refs/tags/0.26.0.tar.gz",
CN = "https://gitcode.com/mcpp-res/openkal-musl/releases/download/0.26.0/openkal-musl-0.26.0.tar.gz",
},
sha256 = "4521556c6abb4b928dba2c5b44e30f778a8a5a8bb39c4d55fb5239c7cd30892a",
},
["0.25.0"] = {
url = {
GLOBAL = "https://github.com/mcpplibs/openkal-musl/archive/refs/tags/0.25.0.tar.gz",
Expand Down Expand Up @@ -427,6 +434,13 @@ package = {
},
},
macosx = {
["0.26.0"] = {
url = {
GLOBAL = "https://github.com/mcpplibs/openkal-musl/archive/refs/tags/0.26.0.tar.gz",
CN = "https://gitcode.com/mcpp-res/openkal-musl/releases/download/0.26.0/openkal-musl-0.26.0.tar.gz",
},
sha256 = "4521556c6abb4b928dba2c5b44e30f778a8a5a8bb39c4d55fb5239c7cd30892a",
},
["0.25.0"] = {
url = {
GLOBAL = "https://github.com/mcpplibs/openkal-musl/archive/refs/tags/0.25.0.tar.gz",
Expand Down Expand Up @@ -779,6 +793,13 @@ package = {
},
},
windows = {
["0.26.0"] = {
url = {
GLOBAL = "https://github.com/mcpplibs/openkal-musl/archive/refs/tags/0.26.0.tar.gz",
CN = "https://gitcode.com/mcpp-res/openkal-musl/releases/download/0.26.0/openkal-musl-0.26.0.tar.gz",
},
sha256 = "4521556c6abb4b928dba2c5b44e30f778a8a5a8bb39c4d55fb5239c7cd30892a",
},
["0.25.0"] = {
url = {
GLOBAL = "https://github.com/mcpplibs/openkal-musl/archive/refs/tags/0.25.0.tar.gz",
Expand Down
2 changes: 1 addition & 1 deletion tests/examples/openkal-musl/mcpp.toml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ name = "openkal-musl-tests"
version = "0.1.0"

[target.'cfg(os = "linux")'.dependencies.mcpplibs]
openkal-musl = "0.25.0"
openkal-musl = "0.26.0"

[target.'cfg(os = "linux")'.build]
cxxflags = ["-DHAVE_OPENKAL_MUSL=1"]
Expand Down
2 changes: 1 addition & 1 deletion tests/examples/openkal/mcpp.toml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ openkal-macos = "0.19.0"
openkal-windows = "0.17.0"

[target.'cfg(all(os = "linux", env = "musl"))'.dependencies.mcpplibs]
openkal-llvm-runtime = "0.16.15"
openkal-llvm-runtime = "0.17.0"

[target.'cfg(arch = "wasm32")'.dependencies.mcpplibs]
openkal-emscripten = "0.9.0"
Expand Down
4 changes: 3 additions & 1 deletion tests/openkal/pins.toml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@ toolchain = "llvm@22.1.8"
# index requires mcpp >= 2026.9.18.1 but this is mcpp 2026.9.17.3 [E0006]"
# before a single line of the member's own source is read.
#
# 2026-11-02: measurement engine 2026.11.2.1, the workflow's (openkal-musl 0.26.0
# embeds compat.mimalloc and states mcpp >= 2026.11). The index client floor is unchanged.
# 2026-10-30: measurement engine 2026.10.31.1, the workflow's (openkal-platform 0.18.0 and later
# state mcpp >= 2026.10.30.1). The index client floor is unchanged.
# 2026-10-28: measurement engine 2026.10.27.1, the workflow's (platforms, SPEC-013).
Expand Down Expand Up @@ -142,7 +144,7 @@ toolchain = "llvm@22.1.8"
# openkal-musl 0.16.0 and openkal-llvm-runtime 0.12.0), because a pin that
# moves onto an unreachable or divergent asset fails every member at once and
# reports it as a compatibility result.
mcpp = "2026.10.31.1"
mcpp = "2026.11.2.1"

# The Windows target is named for the C environment the graph presents there,
# which is musl's (openkal-musl declares `[c-abi] presents = "posix"`), not
Expand Down
Loading