diff options
author | ngn <ngn@noreply.codeberg.org> | 2024-06-04 18:39:57 +0000 |
---|---|---|
committer | ngn <ngn@noreply.codeberg.org> | 2024-06-04 18:39:57 +0000 |
commit | c0c0d9ef6bc7df5538ed22bb2a0f32728bb92bf7 (patch) | |
tree | be5ada1b276b8b2096218d74c92bbf0a7a9de33c /m.c | |
parent | ff3397dcc900659e323127612beb716a86fd6513 (diff) | |
parent | ca341028fa3abccb636c94fba5608a609b44c21d (diff) |
Merge pull request 'tighter control on symbol visibility in libk.so' (#84) from growler/k:ffi into master
Reviewed-on: https://codeberg.org/ngn/k/pulls/84
Diffstat (limited to 'm.c')
-rw-r--r-- | m.c | 4 |
1 files changed, 4 insertions, 0 deletions
@@ -10,6 +10,10 @@ #else #define AP(p) ((A)(U)(p)) //A from pointer #endif +#ifdef shared +__attribute((weak, visibility("default"))) V kinit(); +#endif + Z ST{V*p;W n;B f;}reg[128];Z U nreg;Z UC pnd[128];Z U npnd; Z V mc(){P(!npnd)F(npnd,U j=pnd[i];munmap(reg[j].p,reg[j].n);reg[j].p=0)npnd=0;U j=0;F(nreg,I(reg[i].p,MC(reg+j,reg+i,SZ*reg);j++))nreg=j;} Z A mu(V*p)_(F(nreg,P(reg[i].p==p,pnd[npnd++]=i;0))die("UNMAP")) |