Skip to content

Remove set_stack_pointer helper object from glibc/sysroot build#1120

Open
DanielZ224 wants to merge 2 commits intomainfrom
fix/deprecate-set-stack-pointer
Open

Remove set_stack_pointer helper object from glibc/sysroot build#1120
DanielZ224 wants to merge 2 commits intomainfrom
fix/deprecate-set-stack-pointer

Conversation

@DanielZ224
Copy link
Copy Markdown
Contributor

Purpose

This PR removes the deprecated set_stack_pointer.o helper from the glibc/sysroot build path.

Previously, set_stack_pointer.o was built from set_stack_pointer.s, copied into the wasm32-wasi sysroot, included in glibc object lists, and explicitly linked during dynamic compilation. The stack pointer update is now handled on the Wasmtime side, so this standalone helper object is no longer needed.

This change:

  • removes src/glibc/csu/wasm32/set_stack_pointer.s
  • removes set_stack_pointer.o / set_stack_pointer.os from glibc object lists
  • stops building and copying set_stack_pointer.o into the sysroot
  • stops linking set_stack_pointer.o in scripts/lind_compile
  • removes the dummy set_stack_pointer reference from pthread_create.c
  • updates the toolchain documentation accordingly

Related Issue

Closes #978
Related to: glibc: depreciate set_stack_pointer.o

Validation

I checked that there are no remaining script/source/document references to:

  • set_stack_pointer.s
  • set_stack_pointer.o
  • set_stack_pointer.os

using grep across scripts, src, and docs, excluding generated/binary artifacts.

I also ran:

cd ~/lind-wasm/src/wasmtime
cargo check -p wasmtime --lib

@github-actions
Copy link
Copy Markdown
Contributor

End-to-End Test Report

Test Preview

Unified Test Report

grate harness

MetricValue
Total12
Success12
Failures0
Compile Failures0
Runtime Failures0
Timeout Failures0
Missing Pair Failures0

Cases

TestStatusError TypeOutput
concurrent-request/geteuid_grate.cSuccess
STDOUT:
[Grate|geteuid] Registering geteuid handler for cage 2 in grate 1 with fn ptr addr: 3
[Cage | geteuid] PASS: 1000000 calls returned 10
[Grate|geteuid] PASS

STDERR:

concurrent-request/race-test_grate.cSuccess
STDOUT:
pass

STDERR:

concurrent-request/thread_race_grate.cSuccess
STDOUT:
[thread_race] Registering handler for cage 2 in grate 1 with fn ptr addr: 3
[thread_race] PASS: 20 threads x 100000 calls returned 10
[thread_race] PASS

STDERR:

interposing-calls/interpose-exec_grate.cSuccess
STDOUT:
[Grate|interpose-exec] Registering exec handler for cage 2 in grate 1 with fn ptr addr: 3
[Grate|interpose-exec] Handling function ptr: 3 from cage: 1
[Grate|interpose-exec] In exec_grate 1 handler for cage: 1
[Grate|interpose-exec] Handling function ptr: 3 from cage: 1
[Grate|interpose-exec] In exec_grate 1 handler for cage: 1
Exec successful, argv[1]: --execd
[Grate|interpose-exec] PASS

STDERR:

interposing-calls/interpose-exit_grate.cSuccess
STDOUT:
[Grate|interpose-exit] Registering exit handler for cage 2 in grate 1 with fn ptr addr: 3
Exiting...

[Grate|interpose-exit] PASS

STDERR:

interposing-calls/interpose-fork_grate.cSuccess
STDOUT:
[Grate|interpose-fork] Registering fork handler for cage 2 in grate 1 with fn ptr addr: 3
[Grate|interpose-fork] Handling function ptr: 3 from cage: 1
[Grate|interpose-fork] In fork_grate 1 handler for cage: 1
[Grate|interpose-fork] PASS

STDERR:

interposing-calls/interpose-mmap_grate.cSuccess
STDOUT:
[Grate|interpose-mmap] Registering mmap handler for cage 2 in grate 1 with fn ptr addr: 3
[Grate|interpose-mmap] Handling function ptr: 3 from cage: 1
[Grate|interpose-mmap] In mmap_grate 1 handler for cage: 1
[Grate|interpose-mmap] Handling function ptr: 3 from cage: 1
[Grate|interpose-mmap] In mmap_grate 1 handler for cage: 1
[Grate|interpose-mmap] Handling function ptr: 3 from cage: 1
[Grate|interpose-mmap] In mmap_grate 1 handler for cage: 1
[Grate|interpose-mmap] Handling function ptr: 3 from cage: 1
[Grate|interpose-mmap] In mmap_grate 1 handler for cage: 1
[Grate|interpose-mmap] Handling function ptr: 3 from cage: 1
[Grate|interpose-mmap] In mmap_grate 1 handler for cage: 1
mmap test: PASS
[Grate|interpose-mmap] PASS

STDERR:

interposing-calls/interpose-register_grate.cSuccess
STDOUT:
[Grate|interpose-register] Registering register_handler for cage 2 in grate 1 with fn ptr addr: 4
[cage] registering 107. grateid: 2 cageid: 3
[Grate|interpose-register] Handling function ptr: 4 from cage: 1
[Grate|interpose-register] In register_grate 1 handler for cage: 1
[Grate|geteuid] Registering geteuid handler for cage 1 in grate 1 with fn ptr addr: 3
[Grate|interpose-register] Handling function ptr: 3 from cage: 1
[Grate|interpose-register] In register_grate 1 handler for cage: 1
[Grate|interpose-register] PASS

STDERR:

multi-register_grate.cSuccess
STDOUT:
[Grate|multi-register_grate] Registering geteuid handler for cage 2 in grate 1 with fn ptr addr: 3
[Grate|multi-register_grate] Registering getuid handler for cage 2 in grate 1 with fn ptr addr: 4
[Grate|multi-register_grate] Handling function ptr: 3 from cage: 1
[Grate|multi-register_grate] In multi-register_grate 1 handler for cage: 1
[Grate|multi-register_grate] Handling function ptr: 4 from cage: 1
[Grate|multi-register_grate] In multi-register_grate 1 handler for cage: 1
[Cage | multi-register] PASS: geteuid=10, getuid=20
[Grate|multi-register] PASS

STDERR:

simple-tests/cpdata_grate.cSuccess
STDOUT:
[Grate|open] intercepts open call: thiscage=1, arg1cage=2
[Grate|open] copied pathname: random
[cage] fd=10

STDERR:

simple-tests/diff-cage-args_grate.cSuccess
STDOUT:
[Grate|diff-cage-args] Handling function ptr: 3 from cage: 1
[Grate|diff-cage-args] In open_grate 1 handler for cage: 1
Hello world. FD=-1
[Grate|diff-cage-args] Handling function ptr: 4 from cage: 1
Goodbye world! ret=4321 buf=helloworld
[Grate|diff-cage-args] PASS

STDERR:

simple-tests/geteuid_grate.cSuccess
STDOUT:
[Grate|geteuid] Registering geteuid handler for cage 2 in grate 1 with fn ptr addr: 3
[Grate|geteuid] Handling function ptr: 3 from cage: 1
[Grate|geteuid] In geteuid_grate 1 handler for cage: 1
[Cage | geteuid] PASS: geteuid ret = 10
[Grate|geteuid] PASS

STDERR:

static harness

Test Report

Deterministic Tests

Summary

MetricCount
Total Test Cases3
Number of Successes3
Number of Failures0
Number of Compilation Failure Native0
Number of Runtime Failure Native0
Number of Segmentation Fault Native0
Number of Timeout During Native0
Number of Lind Wasm Compile Failure0
Number of Lind Wasm Runtime Failure0
Number of Lind Wasm Segmentation Failure0
Number of Timeout During Lind Wasm run0
Number of Unknown Failure0
Number of C Compiler and Wasm Output mismatch0
Number of Fail Test: Native Succeeded (Should Fail)0
Number of Fail Test: Wasm Succeeded (Should Fail)0
Number of Fail Test: Both Native and Wasm Succeeded (Should Fail)0
Number of Fail Test: Native Compilation Failure (Should Succeed)0
Number of Fail Test: Wasm Compilation Failure (Should Succeed)0

Test Results by Category

Test CaseStatusError TypeNative TimeWasm TimeOutput
Static Tests
fork_simple.cSuccessNone0.054786s4.399135s
Success
thread.cSuccessNone0.047642s4.469698s
Success
tls_test.cSuccessNone0.055570s4.509513s
Success
Fail Tests

Summary

MetricCount
Total Test Cases0
Number of Successes0
Number of Failures0
Number of Compilation Failure Native0
Number of Runtime Failure Native0
Number of Segmentation Fault Native0
Number of Timeout During Native0
Number of Lind Wasm Compile Failure0
Number of Lind Wasm Runtime Failure0
Number of Lind Wasm Segmentation Failure0
Number of Timeout During Lind Wasm run0
Number of Unknown Failure0
Number of C Compiler and Wasm Output mismatch0
Number of Fail Test: Native Succeeded (Should Fail)0
Number of Fail Test: Wasm Succeeded (Should Fail)0
Number of Fail Test: Both Native and Wasm Succeeded (Should Fail)0
Number of Fail Test: Native Compilation Failure (Should Succeed)0
Number of Fail Test: Wasm Compilation Failure (Should Succeed)0

wasm harness

Test Report

Deterministic Tests

Summary

MetricCount
Total Test Cases208
Number of Successes208
Number of Failures0
Number of Compilation Failure Native0
Number of Runtime Failure Native0
Number of Segmentation Fault Native0
Number of Timeout During Native0
Number of Lind Wasm Compile Failure0
Number of Lind Wasm Runtime Failure0
Number of Lind Wasm Segmentation Failure0
Number of Timeout During Lind Wasm run0
Number of Unknown Failure0
Number of C Compiler and Wasm Output mismatch0
Number of Fail Test: Native Succeeded (Should Fail)0
Number of Fail Test: Wasm Succeeded (Should Fail)0
Number of Fail Test: Both Native and Wasm Succeeded (Should Fail)0
Number of Fail Test: Native Compilation Failure (Should Succeed)0
Number of Fail Test: Wasm Compilation Failure (Should Succeed)0

Test Results by Category

Test CaseStatusError TypeNative TimeWasm TimeOutput
File Tests
chartests.cSuccessNone0.049644s0.146448s
Success
chdir_getcwd.cSuccessNone0.051019s0.100577s
Success
chmod.cSuccessNone0.056000s0.105919s
Success
clock_gettime_highlevel.cSuccessNone0.120753s0.274836s
Success
clock_gettime_simple.cSuccessNone0.046086s0.091323s
Success
cloexec.cSuccessNone0.054706s0.108533s
Success
close.cSuccessNone0.062277s0.124400s
Success
creat_access.cSuccessNone0.055892s0.100916s
Success
doubleclose.cSuccessNone0.045210s0.084440s
Success
dup.cSuccessNone0.045949s0.100169s
Success
dup2.cSuccessNone0.052333s0.097839s
Success
dup3.cSuccessNone0.050593s0.098736s
Success
dupwrite.cSuccessNone0.053462s0.096204s
Success
etc_conf.cSuccessNone0.048610s0.104722s
Success
fchdir.cSuccessNone0.055716s0.108183s
Success
fchmod.cSuccessNone0.057153s0.108705s
Success
fcntl.cSuccessNone0.053325s0.107472s
Success
fdatasync.cSuccessNone0.052858s0.097514s
Success
filetest.cSuccessNone0.053446s0.096091s
Success
filetest1000.cSuccessNone0.060834s0.110767s
Success
flock.cSuccessNone0.063304s0.130550s
Success
fstat.cSuccessNone0.055444s0.105836s
Success
fstatfs.cSuccessNone0.048517s0.091931s
Success
fsync.cSuccessNone0.052666s0.095940s
Success
ftruncate.cSuccessNone0.057443s0.223369s
Success
getcwd.cSuccessNone0.049796s0.093155s
Success
getpgid.cSuccessNone0.047240s0.088447s
Success
getrandom.cSuccessNone0.052761s0.100138s
Success
ioctl.cSuccessNone0.056874s0.105524s
Success
link.cSuccessNone0.057342s0.155680s
Success
locale_test.cSuccessNone0.066642s0.626500s
Success
lseek.cSuccessNone0.058541s0.214769s
Success
lstat.cSuccessNone0.056955s0.115892s
Success
mkdir_rmdir.cSuccessNone0.054457s0.099043s
Success
mkfifo_test.cSuccessNone0.059260s0.136238s
Success
mknod.cSuccessNone0.051660s0.107324s
Success
nocancel_io.cSuccessNone0.057860s0.127690s
Success
open.cSuccessNone0.047856s0.088174s
Success
openat.cSuccessNone0.049007s0.095880s
Success
path_conversion_safety.cSuccessNone0.059823s0.124116s
Success
ppoll.cSuccessNone0.058097s0.110633s
Success
pread_pwrite.cSuccessNone0.049750s0.110507s
Success
preadv_pwritev.cSuccessNone0.056328s0.115825s
Success
printf.cSuccessNone0.045305s0.082904s
Success
prlimit64.cSuccessNone0.045949s0.092099s
Success
read.cSuccessNone0.054718s0.106013s
Success
readbytes.cSuccessNone0.049738s0.093114s
Success
readdir_basic.cSuccessNone0.057476s0.119236s
Success
readlink.cSuccessNone0.053978s0.104089s
Success
readlinkat.cSuccessNone0.054949s0.110647s
Success
readv_writev_test.cSuccessNone0.055019s0.109546s
Success
rename.cSuccessNone0.065508s0.116352s
Success
sc-writev.cSuccessNone0.051067s0.097031s
Success
stat.cSuccessNone0.054537s0.104846s
Success
statfs.cSuccessNone0.047604s0.092825s
Success
symlink.cSuccessNone0.056195s0.131471s
Success
sync_file_range.cSuccessNone0.051380s0.096251s
Success
timespec_time_t_compat.cSuccessNone0.050055s0.092715s
Success
truncate.cSuccessNone0.057303s0.108718s
Success
unlink.cSuccessNone0.056613s0.146172s
Success
unlinkat.cSuccessNone0.055945s0.116940s
Success
write.cSuccessNone0.046713s0.086019s
Success
writeloop.cSuccessNone0.056721s0.097487s
Success
writepartial.cSuccessNone0.055103s0.096148s
Success
writev.cSuccessNone0.054261s0.107744s
Success
Math Tests
math_link_smoke.cSuccessNone0.056628s0.093104s
Success
math_tests.cSuccessNone0.061241s0.112651s
Success
Memory Tests
brk.cSuccessNone0.051405s0.097320s
Success
fork_large_memory.cSuccessNone0.084602s0.343909s
Success
malloc.cSuccessNone0.048903s0.089480s
Success
malloc_large.cSuccessNone0.050501s0.094462s
Success
memcpy.cSuccessNone0.048415s0.088437s
Success
memory_error_test.cSuccessNone0.056483s0.130365s
Success
mmap.cSuccessNone0.045461s0.089100s
Success
mmap_aligned.cSuccessNone0.048421s0.107409s
Success
mmap_complicated.cSuccessNone0.054597s0.109403s
Success
mmap_file.cSuccessNone0.054661s0.100901s
Success
mmap_shared.cSuccessNone0.052826s0.104405s
Success
mmaptest.cSuccessNone0.049997s0.094137s
Success
mprotect.cSuccessNone0.048718s0.090306s
Success
mprotect_boundary.cSuccessNone0.048829s0.107132s
Success
mprotect_end_region.cSuccessNone0.047108s0.099656s
Success
mprotect_middle_region.cSuccessNone0.047202s0.101487s
Success
mprotect_multiple_times.cSuccessNone0.049070s0.100241s
Success
mprotect_same_value.cSuccessNone0.046782s0.093761s
Success
mprotect_spanning_regions.cSuccessNone0.047748s0.114061s
Success
munmap_adjacent_shm.cSuccessNone0.049264s0.104875s
Success
sbrk.cSuccessNone0.048824s0.092580s
Success
segfault.cSuccessNone0.055018s0.115385s
Success
shm.cSuccessNone0.053852s0.108098s
Success
shmtest.cSuccessNone0.048142s0.095788s
Success
thread_malloc_sequential.cSuccessNone0.055510s0.119466s
Success
vtable.cSuccessNone0.059693s0.111922s
Success
Networking Tests
accept4.cSuccessNone0.060123s0.115851s
Success
dns_resolve_test.cSuccessNone0.052369s0.100498s
Success
dnstest.cSuccessNone0.053350s0.108222s
Success
epoll_edge_triggered.cSuccessNone0.211327s0.460709s
Success
epollcreate1.cSuccessNone0.054453s0.108339s
Success
error_handling_net.cSuccessNone0.062180s0.218534s
Success
getaddrinfo_test.cSuccessNone0.056887s0.141928s
Success
getaddrinfo_unspec.cSuccessNone0.057925s0.144448s
Success
gethostname.cSuccessNone0.046616s0.086702s
Success
getifaddrs.cSuccessNone0.056139s0.099553s
Success
getsockname.cSuccessNone0.059600s0.102576s
Success
getsockopt.cSuccessNone0.057585s0.152926s
Success
ipv6_basic.cSuccessNone0.059263s0.148163s
Success
makepipe.cSuccessNone0.047041s0.085071s
Success
nonblocking_eagain.cSuccessNone0.059039s0.162545s
Success
pipe.cSuccessNone0.056953s0.109604s
Success
pipe2.cSuccessNone0.056600s0.102869s
Success
pipeinput.cSuccessNone0.057418s0.119693s
Success
pipeinput2.cSuccessNone0.057323s0.121154s
Success
pipeonestring.cSuccessNone0.058250s0.119710s
Success
pipepong.cSuccessNone0.056385s0.121880s
Success
pipewrite.cSuccessNone0.049606s0.100406s
Success
poll.cSuccessNone0.054459s0.095686s
Success
recvfrom-sendto.cSuccessNone0.056104s0.107408s
Success
sendmsg_recvmsg_test.cSuccessNone0.055775s0.109334s
Success
serverclient.cSuccessNone0.054886s0.106216s
Success
shutdown.cSuccessNone0.057042s0.103155s
Success
shutdown_fork.cSuccessNone0.054937s0.107608s
Success
simple-select.cSuccessNone0.056535s0.121206s
Success
simple_epoll.cSuccessNone0.054938s0.104633s
Success
socket.cSuccessNone0.053029s0.095870s
Success
socket_cloexec.cSuccessNone0.052889s0.095952s
Success
socket_options_advanced.cSuccessNone0.059887s0.177617s
Success
socketepoll.cSuccessNone0.054227s0.097568s
Success
socketpair.cSuccessNone0.052479s0.102733s
Success
socketselect.cSuccessNone0.054259s0.104689s
Success
udp_send_recv.cSuccessNone0.161219s0.262701s
Success
uds-getsockname.cSuccessNone0.054936s0.099492s
Success
uds-nb-select.cSuccessNone2.063240s2.149920s
Success
uds-serverclient.cSuccessNone0.059446s0.127090s
Success
uds-socketselect.cSuccessNone0.054656s0.105500s
Success
writev_socket.cSuccessNone0.057622s0.140156s
Success
Process Tests
barrier_test.cSuccessNone0.052739s0.100961s
Success
chain_thread.cSuccessNone1.056618s1.106981s
Success
ctor_syscall_test.cSuccessNone0.043918s0.086154s
Success
cxa_atexit_test.cSuccessNone0.049068s0.089989s
Success
execve_shebang.cSuccessNone0.054245s0.097012s
Success
exit.cSuccessNone0.050859s0.087735s
Success
exit_failure.cSuccessNone0.054269s0.100243s
Success
exit_group_thread.cSuccessNone0.054449s0.106724s
Success
flockfile_test.cSuccessNone0.054461s0.108507s
Success
fork2malloc.cSuccessNone0.054637s0.105709s
Success
fork_select.cSuccessNone0.053741s0.110991s
Success
fork_simple.cSuccessNone0.050872s0.097672s
Success
fork_syscall.cSuccessNone0.057191s0.226207s
Success
fork_tls_ctype.cSuccessNone0.056201s0.126001s
Success
forkandopen.cSuccessNone0.054675s0.114327s
Success
forkdup.cSuccessNone0.056199s0.106268s
Success
forkexecuid.cSuccessNone0.053151s0.114306s
Success
forkexecv-arg.cSuccessNone0.054078s0.103243s
Success
forkexecv.cSuccessNone0.051170s0.100548s
Success
forkfiles.cSuccessNone0.054259s0.109821s
Success
forkmalloc.cSuccessNone0.055269s0.102267s
Success
forknodup.cSuccessNone0.054534s0.111580s
Success
function-ptr.cSuccessNone0.048361s0.089772s
Success
getegid_syscall.cSuccessNone0.054316s0.186574s
Success
getgid_syscall.cSuccessNone0.054884s0.193416s
Success
getpid.cSuccessNone0.046103s0.086509s
Success
getpid_syscall.cSuccessNone0.056780s0.203961s
Success
getppid.cSuccessNone0.053722s0.100346s
Success
getppid_syscall.cSuccessNone0.056559s0.168335s
Success
getuid.cSuccessNone0.054631s0.096472s
Success
getuid_syscall.cSuccessNone0.053000s0.136100s
Success
hello-arg.cSuccessNone0.045197s0.084180s
Success
hello.cSuccessNone0.045956s0.082791s
Success
longjmp.cSuccessNone0.044518s0.087138s
Success
mutex.cSuccessNone2.057735s2.105451s
Success
printf_deadlock_smoke.cSuccessNone0.062485s0.129949s
Success
printf_thread_test.cSuccessNone0.052531s0.107263s
Success
sem_forks.cSuccessNone0.057297s0.113970s
Success
setsid.cSuccessNone0.048149s0.084486s
Success
template.cSuccessNone0.054733s0.122372s
Success
test_exec_nofork.cSuccessNone0.055283s0.100710s
Success
test_unlink_open_file.cSuccessNone0.048176s0.088142s
Success
thread-guard.cSuccessNone0.051654s0.101232s
Success
thread-test.cSuccessNone0.049591s0.094729s
Success
thread.cSuccessNone0.048508s0.091412s
Success
thread_cageid_race.cSuccessNone0.049566s0.112351s
Success
tls_test.cSuccessNone0.051999s0.102763s
Success
uname.cSuccessNone0.046076s0.085129s
Success
wait.cSuccessNone2.051713s2.100761s
Success
waitpid_anychild.cSuccessNone0.056018s0.101756s
Success
waitpid_syscall.cSuccessNone1.053758s1.130484s
Success
waitpid_wnohang.cSuccessNone0.053125s0.101707s
Success
Signal Tests
alarm.cSuccessNone7.053138s7.124740s
Success
eintr_fork_signal.cSuccessNone1.057061s1.115241s
Success
kill.cSuccessNone1.054163s1.105078s
Success
setitimer.cSuccessNone7.054357s7.131554s
Success
sigalrm.cSuccessNone2.054657s2.110995s
Success
sigaltstack.cSuccessNone0.056545s0.106944s
Success
sigchld.cSuccessNone1.057046s1.101765s
Success
signal-fork.cSuccessNone4.056163s4.105936s
Success
signal-simple.cSuccessNone0.055532s0.100358s
Success
signal_SIGCHLD.cSuccessNone0.054313s0.106627s
Success
signal_fork.cSuccessNone0.050617s0.106467s
Success
signal_int_ignored.cSuccessNone2.055791s2.102889s
Success
signal_kill_cleanup.cSuccessNone1.052762s1.100558s
Success
signal_procmask.cSuccessNone0.048507s0.095816s
Success
signal_read_interrupt.cSuccessNone0.558557s0.611915s
Success
signal_recursive.cSuccessNone0.049155s0.099209s
Success
signal_sa_mask.cSuccessNone0.048333s0.095098s
Success
signal_select_interrupt.cSuccessNone0.559268s0.614795s
Success
signal_write_interrupt.cSuccessNone1.057205s1.114498s
Success
sigpipe.cSuccessNone1.056835s1.110749s
Success
sigprocmask.cSuccessNone1.054277s1.101261s
Success
Fail Tests

Summary

MetricCount
Total Test Cases4
Number of Successes4
Number of Failures0
Number of Compilation Failure Native0
Number of Runtime Failure Native0
Number of Segmentation Fault Native0
Number of Timeout During Native0
Number of Lind Wasm Compile Failure0
Number of Lind Wasm Runtime Failure0
Number of Lind Wasm Segmentation Failure0
Number of Timeout During Lind Wasm run0
Number of Unknown Failure0
Number of C Compiler and Wasm Output mismatch0
Number of Fail Test: Native Succeeded (Should Fail)0
Number of Fail Test: Wasm Succeeded (Should Fail)0
Number of Fail Test: Both Native and Wasm Succeeded (Should Fail)0
Number of Fail Test: Native Compilation Failure (Should Succeed)0
Number of Fail Test: Wasm Compilation Failure (Should Succeed)0

Test Results by Category

Test CaseStatusError TypeNative TimeWasm TimeOutput
Dylink Tests
dlerror.cSuccessNone0.046056s0.086226s
Success
Memory Tests
mmap-negative1.cSuccessNone0.134656s0.090706s
Success
mmap-negative2.cSuccessNone0.114612s0.092975s
Success
Signal Tests
signal_resethand.cSuccessNone1.054422s1.101330s
Success

Comment thread src/wasmtime/crates/wasmtime/src/runtime/instance.rs
@DanielZ224 DanielZ224 force-pushed the fix/deprecate-set-stack-pointer branch from 3989f22 to 14e67f2 Compare April 26, 2026 22:37
@github-actions
Copy link
Copy Markdown
Contributor

End-to-End Test Report

Test Preview

Unified Test Report

grate harness

MetricValue
Total12
Success12
Failures0
Compile Failures0
Runtime Failures0
Timeout Failures0
Missing Pair Failures0

Cases

TestStatusError TypeOutput
concurrent-request/geteuid_grate.cSuccess
STDOUT:
[Grate|geteuid] Registering geteuid handler for cage 2 in grate 1 with fn ptr addr: 3
[Cage | geteuid] PASS: 1000000 calls returned 10
[Grate|geteuid] PASS

STDERR:

concurrent-request/race-test_grate.cSuccess
STDOUT:
pass

STDERR:

concurrent-request/thread_race_grate.cSuccess
STDOUT:
[thread_race] Registering handler for cage 2 in grate 1 with fn ptr addr: 3
[thread_race] PASS: 20 threads x 100000 calls returned 10
[thread_race] PASS

STDERR:

interposing-calls/interpose-exec_grate.cSuccess
STDOUT:
[Grate|interpose-exec] Registering exec handler for cage 2 in grate 1 with fn ptr addr: 3
[Grate|interpose-exec] Handling function ptr: 3 from cage: 1
[Grate|interpose-exec] In exec_grate 1 handler for cage: 1
[Grate|interpose-exec] Handling function ptr: 3 from cage: 1
[Grate|interpose-exec] In exec_grate 1 handler for cage: 1
Exec successful, argv[1]: --execd
[Grate|interpose-exec] PASS

STDERR:

interposing-calls/interpose-exit_grate.cSuccess
STDOUT:
[Grate|interpose-exit] Registering exit handler for cage 2 in grate 1 with fn ptr addr: 3
Exiting...

[Grate|interpose-exit] PASS

STDERR:

interposing-calls/interpose-fork_grate.cSuccess
STDOUT:
[Grate|interpose-fork] Registering fork handler for cage 2 in grate 1 with fn ptr addr: 3
[Grate|interpose-fork] Handling function ptr: 3 from cage: 1
[Grate|interpose-fork] In fork_grate 1 handler for cage: 1
[Grate|interpose-fork] PASS

STDERR:

interposing-calls/interpose-mmap_grate.cSuccess
STDOUT:
[Grate|interpose-mmap] Registering mmap handler for cage 2 in grate 1 with fn ptr addr: 3
[Grate|interpose-mmap] Handling function ptr: 3 from cage: 1
[Grate|interpose-mmap] In mmap_grate 1 handler for cage: 1
[Grate|interpose-mmap] Handling function ptr: 3 from cage: 1
[Grate|interpose-mmap] In mmap_grate 1 handler for cage: 1
[Grate|interpose-mmap] Handling function ptr: 3 from cage: 1
[Grate|interpose-mmap] In mmap_grate 1 handler for cage: 1
[Grate|interpose-mmap] Handling function ptr: 3 from cage: 1
[Grate|interpose-mmap] In mmap_grate 1 handler for cage: 1
[Grate|interpose-mmap] Handling function ptr: 3 from cage: 1
[Grate|interpose-mmap] In mmap_grate 1 handler for cage: 1
mmap test: PASS
[Grate|interpose-mmap] PASS

STDERR:

interposing-calls/interpose-register_grate.cSuccess
STDOUT:
[Grate|interpose-register] Registering register_handler for cage 2 in grate 1 with fn ptr addr: 4
[cage] registering 107. grateid: 2 cageid: 3
[Grate|interpose-register] Handling function ptr: 4 from cage: 1
[Grate|interpose-register] In register_grate 1 handler for cage: 1
[Grate|geteuid] Registering geteuid handler for cage 1 in grate 1 with fn ptr addr: 3
[Grate|interpose-register] Handling function ptr: 3 from cage: 1
[Grate|interpose-register] In register_grate 1 handler for cage: 1
[Grate|interpose-register] PASS

STDERR:

multi-register_grate.cSuccess
STDOUT:
[Grate|multi-register_grate] Registering geteuid handler for cage 2 in grate 1 with fn ptr addr: 3
[Grate|multi-register_grate] Registering getuid handler for cage 2 in grate 1 with fn ptr addr: 4
[Grate|multi-register_grate] Handling function ptr: 3 from cage: 1
[Grate|multi-register_grate] In multi-register_grate 1 handler for cage: 1
[Grate|multi-register_grate] Handling function ptr: 4 from cage: 1
[Grate|multi-register_grate] In multi-register_grate 1 handler for cage: 1
[Cage | multi-register] PASS: geteuid=10, getuid=20
[Grate|multi-register] PASS

STDERR:

simple-tests/cpdata_grate.cSuccess
STDOUT:
[Grate|open] intercepts open call: thiscage=1, arg1cage=2
[Grate|open] copied pathname: random
[cage] fd=10

STDERR:

simple-tests/diff-cage-args_grate.cSuccess
STDOUT:
[Grate|diff-cage-args] Handling function ptr: 3 from cage: 1
[Grate|diff-cage-args] In open_grate 1 handler for cage: 1
Hello world. FD=-1
[Grate|diff-cage-args] Handling function ptr: 4 from cage: 1
Goodbye world! ret=4321 buf=helloworld
[Grate|diff-cage-args] PASS

STDERR:

simple-tests/geteuid_grate.cSuccess
STDOUT:
[Grate|geteuid] Registering geteuid handler for cage 2 in grate 1 with fn ptr addr: 3
[Grate|geteuid] Handling function ptr: 3 from cage: 1
[Grate|geteuid] In geteuid_grate 1 handler for cage: 1
[Cage | geteuid] PASS: geteuid ret = 10
[Grate|geteuid] PASS

STDERR:

static harness

Test Report

Deterministic Tests

Summary

MetricCount
Total Test Cases3
Number of Successes3
Number of Failures0
Number of Compilation Failure Native0
Number of Runtime Failure Native0
Number of Segmentation Fault Native0
Number of Timeout During Native0
Number of Lind Wasm Compile Failure0
Number of Lind Wasm Runtime Failure0
Number of Lind Wasm Segmentation Failure0
Number of Timeout During Lind Wasm run0
Number of Unknown Failure0
Number of C Compiler and Wasm Output mismatch0
Number of Fail Test: Native Succeeded (Should Fail)0
Number of Fail Test: Wasm Succeeded (Should Fail)0
Number of Fail Test: Both Native and Wasm Succeeded (Should Fail)0
Number of Fail Test: Native Compilation Failure (Should Succeed)0
Number of Fail Test: Wasm Compilation Failure (Should Succeed)0

Test Results by Category

Test CaseStatusError TypeNative TimeWasm TimeOutput
Static Tests
fork_simple.cSuccessNone0.053840s4.383470s
Success
thread.cSuccessNone0.045035s4.423261s
Success
tls_test.cSuccessNone0.059379s4.459503s
Success
Fail Tests

Summary

MetricCount
Total Test Cases0
Number of Successes0
Number of Failures0
Number of Compilation Failure Native0
Number of Runtime Failure Native0
Number of Segmentation Fault Native0
Number of Timeout During Native0
Number of Lind Wasm Compile Failure0
Number of Lind Wasm Runtime Failure0
Number of Lind Wasm Segmentation Failure0
Number of Timeout During Lind Wasm run0
Number of Unknown Failure0
Number of C Compiler and Wasm Output mismatch0
Number of Fail Test: Native Succeeded (Should Fail)0
Number of Fail Test: Wasm Succeeded (Should Fail)0
Number of Fail Test: Both Native and Wasm Succeeded (Should Fail)0
Number of Fail Test: Native Compilation Failure (Should Succeed)0
Number of Fail Test: Wasm Compilation Failure (Should Succeed)0

wasm harness

Test Report

Deterministic Tests

Summary

MetricCount
Total Test Cases208
Number of Successes208
Number of Failures0
Number of Compilation Failure Native0
Number of Runtime Failure Native0
Number of Segmentation Fault Native0
Number of Timeout During Native0
Number of Lind Wasm Compile Failure0
Number of Lind Wasm Runtime Failure0
Number of Lind Wasm Segmentation Failure0
Number of Timeout During Lind Wasm run0
Number of Unknown Failure0
Number of C Compiler and Wasm Output mismatch0
Number of Fail Test: Native Succeeded (Should Fail)0
Number of Fail Test: Wasm Succeeded (Should Fail)0
Number of Fail Test: Both Native and Wasm Succeeded (Should Fail)0
Number of Fail Test: Native Compilation Failure (Should Succeed)0
Number of Fail Test: Wasm Compilation Failure (Should Succeed)0

Test Results by Category

Test CaseStatusError TypeNative TimeWasm TimeOutput
File Tests
chartests.cSuccessNone0.046450s0.138050s
Success
chdir_getcwd.cSuccessNone0.046834s0.102062s
Success
chmod.cSuccessNone0.054787s0.101384s
Success
clock_gettime_highlevel.cSuccessNone0.117243s0.270902s
Success
clock_gettime_simple.cSuccessNone0.040415s0.083133s
Success
cloexec.cSuccessNone0.051414s0.103055s
Success
close.cSuccessNone0.057586s0.114397s
Success
creat_access.cSuccessNone0.059407s0.100342s
Success
doubleclose.cSuccessNone0.042154s0.078497s
Success
dup.cSuccessNone0.043290s0.092341s
Success
dup2.cSuccessNone0.047898s0.090488s
Success
dup3.cSuccessNone0.045918s0.092037s
Success
dupwrite.cSuccessNone0.048667s0.089748s
Success
etc_conf.cSuccessNone0.045327s0.098634s
Success
fchdir.cSuccessNone0.052858s0.102886s
Success
fchmod.cSuccessNone0.051070s0.098566s
Success
fcntl.cSuccessNone0.048782s0.099583s
Success
fdatasync.cSuccessNone0.049098s0.090218s
Success
filetest.cSuccessNone0.048960s0.087996s
Success
filetest1000.cSuccessNone0.058094s0.105003s
Success
flock.cSuccessNone0.058174s0.122463s
Success
fstat.cSuccessNone0.050917s0.099616s
Success
fstatfs.cSuccessNone0.043967s0.086172s
Success
fsync.cSuccessNone0.048437s0.088934s
Success
ftruncate.cSuccessNone0.053628s0.210135s
Success
getcwd.cSuccessNone0.045681s0.085657s
Success
getpgid.cSuccessNone0.043582s0.082639s
Success
getrandom.cSuccessNone0.048935s0.094355s
Success
ioctl.cSuccessNone0.052773s0.098751s
Success
link.cSuccessNone0.054201s0.146215s
Success
locale_test.cSuccessNone0.063557s0.580911s
Success
lseek.cSuccessNone0.053641s0.204163s
Success
lstat.cSuccessNone0.053175s0.108080s
Success
mkdir_rmdir.cSuccessNone0.050920s0.092085s
Success
mkfifo_test.cSuccessNone0.055187s0.131939s
Success
mknod.cSuccessNone0.049583s0.102257s
Success
nocancel_io.cSuccessNone0.052806s0.120527s
Success
open.cSuccessNone0.044214s0.082678s
Success
openat.cSuccessNone0.044606s0.089708s
Success
path_conversion_safety.cSuccessNone0.056624s0.118112s
Success
ppoll.cSuccessNone0.054078s0.102594s
Success
pread_pwrite.cSuccessNone0.046370s0.100351s
Success
preadv_pwritev.cSuccessNone0.051587s0.106765s
Success
printf.cSuccessNone0.041754s0.078953s
Success
prlimit64.cSuccessNone0.043549s0.085341s
Success
read.cSuccessNone0.050360s0.098994s
Success
readbytes.cSuccessNone0.046054s0.087001s
Success
readdir_basic.cSuccessNone0.053233s0.110123s
Success
readlink.cSuccessNone0.050362s0.097382s
Success
readlinkat.cSuccessNone0.052267s0.103969s
Success
readv_writev_test.cSuccessNone0.050767s0.102964s
Success
rename.cSuccessNone0.052490s0.099758s
Success
sc-writev.cSuccessNone0.049246s0.092952s
Success
stat.cSuccessNone0.051635s0.097931s
Success
statfs.cSuccessNone0.044637s0.086374s
Success
symlink.cSuccessNone0.052441s0.125152s
Success
sync_file_range.cSuccessNone0.047403s0.089641s
Success
timespec_time_t_compat.cSuccessNone0.047487s0.087614s
Success
truncate.cSuccessNone0.050799s0.103507s
Success
unlink.cSuccessNone0.052213s0.137624s
Success
unlinkat.cSuccessNone0.052569s0.110677s
Success
write.cSuccessNone0.042710s0.079635s
Success
writeloop.cSuccessNone0.052648s0.092354s
Success
writepartial.cSuccessNone0.051660s0.088810s
Success
writev.cSuccessNone0.052148s0.100769s
Success
Math Tests
math_link_smoke.cSuccessNone0.052366s0.087545s
Success
math_tests.cSuccessNone0.058768s0.107960s
Success
Memory Tests
brk.cSuccessNone0.047770s0.092399s
Success
fork_large_memory.cSuccessNone0.081663s0.327965s
Success
malloc.cSuccessNone0.046135s0.081794s
Success
malloc_large.cSuccessNone0.045913s0.087336s
Success
memcpy.cSuccessNone0.044912s0.083961s
Success
memory_error_test.cSuccessNone0.052625s0.124254s
Success
mmap.cSuccessNone0.042655s0.083654s
Success
mmap_aligned.cSuccessNone0.044371s0.100360s
Success
mmap_complicated.cSuccessNone0.051385s0.103436s
Success
mmap_file.cSuccessNone0.049943s0.094375s
Success
mmap_shared.cSuccessNone0.049230s0.098281s
Success
mmaptest.cSuccessNone0.044824s0.088266s
Success
mprotect.cSuccessNone0.044359s0.083537s
Success
mprotect_boundary.cSuccessNone0.043685s0.098886s
Success
mprotect_end_region.cSuccessNone0.043714s0.090132s
Success
mprotect_middle_region.cSuccessNone0.043018s0.093598s
Success
mprotect_multiple_times.cSuccessNone0.044079s0.094348s
Success
mprotect_same_value.cSuccessNone0.043032s0.088942s
Success
mprotect_spanning_regions.cSuccessNone0.044136s0.108590s
Success
munmap_adjacent_shm.cSuccessNone0.046347s0.098894s
Success
sbrk.cSuccessNone0.044760s0.084217s
Success
segfault.cSuccessNone0.051471s0.109677s
Success
shm.cSuccessNone0.049528s0.101815s
Success
shmtest.cSuccessNone0.044510s0.089463s
Success
thread_malloc_sequential.cSuccessNone0.051461s0.110852s
Success
vtable.cSuccessNone0.055236s0.105796s
Success
Networking Tests
accept4.cSuccessNone0.054816s0.108691s
Success
dns_resolve_test.cSuccessNone0.049722s0.093851s
Success
dnstest.cSuccessNone0.049497s0.102240s
Success
epoll_edge_triggered.cSuccessNone0.208107s0.440092s
Success
epollcreate1.cSuccessNone0.051976s0.103618s
Success
error_handling_net.cSuccessNone0.060112s0.204023s
Success
getaddrinfo_test.cSuccessNone0.054240s0.136408s
Success
getaddrinfo_unspec.cSuccessNone0.053398s0.114638s
Success
gethostname.cSuccessNone0.043523s0.081240s
Success
getifaddrs.cSuccessNone0.052147s0.094203s
Success
getsockname.cSuccessNone0.056376s0.098210s
Success
getsockopt.cSuccessNone0.053703s0.145288s
Success
ipv6_basic.cSuccessNone0.055042s0.137682s
Success
makepipe.cSuccessNone0.042831s0.080239s
Success
nonblocking_eagain.cSuccessNone0.055289s0.154208s
Success
pipe.cSuccessNone0.052937s0.101273s
Success
pipe2.cSuccessNone0.051985s0.097559s
Success
pipeinput.cSuccessNone0.054627s0.113235s
Success
pipeinput2.cSuccessNone0.053280s0.112668s
Success
pipeonestring.cSuccessNone0.053458s0.112496s
Success
pipepong.cSuccessNone0.052863s0.114772s
Success
pipewrite.cSuccessNone0.046243s0.095161s
Success
poll.cSuccessNone0.050473s0.090219s
Success
recvfrom-sendto.cSuccessNone0.052855s0.102173s
Success
sendmsg_recvmsg_test.cSuccessNone0.052296s0.103391s
Success
serverclient.cSuccessNone0.051145s0.098239s
Success
shutdown.cSuccessNone0.052594s0.098148s
Success
shutdown_fork.cSuccessNone0.051491s0.100811s
Success
simple-select.cSuccessNone0.052990s0.113893s
Success
simple_epoll.cSuccessNone0.050867s0.098245s
Success
socket.cSuccessNone0.049458s0.089905s
Success
socket_cloexec.cSuccessNone0.049296s0.090313s
Success
socket_options_advanced.cSuccessNone0.056217s0.170051s
Success
socketepoll.cSuccessNone0.049519s0.091516s
Success
socketpair.cSuccessNone0.048775s0.097818s
Success
socketselect.cSuccessNone0.050089s0.096737s
Success
udp_send_recv.cSuccessNone0.159089s0.254159s
Success
uds-getsockname.cSuccessNone0.050722s0.092138s
Success
uds-nb-select.cSuccessNone2.059580s2.144556s
Success
uds-serverclient.cSuccessNone0.054935s0.120622s
Success
uds-socketselect.cSuccessNone0.054221s0.097018s
Success
writev_socket.cSuccessNone0.054968s0.132918s
Success
Process Tests
barrier_test.cSuccessNone0.049080s0.095074s
Success
chain_thread.cSuccessNone1.054949s1.102355s
Success
ctor_syscall_test.cSuccessNone0.042670s0.083094s
Success
cxa_atexit_test.cSuccessNone0.047207s0.085969s
Success
execve_shebang.cSuccessNone0.051012s0.092269s
Success
exit.cSuccessNone0.049436s0.088822s
Success
exit_failure.cSuccessNone0.049519s0.093040s
Success
exit_group_thread.cSuccessNone0.052871s0.104526s
Success
flockfile_test.cSuccessNone0.051332s0.104458s
Success
fork2malloc.cSuccessNone0.053132s0.099916s
Success
fork_select.cSuccessNone0.049974s0.106566s
Success
fork_simple.cSuccessNone0.049219s0.092280s
Success
fork_syscall.cSuccessNone0.054066s0.214589s
Success
fork_tls_ctype.cSuccessNone0.052642s0.119703s
Success
forkandopen.cSuccessNone0.052259s0.109551s
Success
forkdup.cSuccessNone0.058418s0.103594s
Success
forkexecuid.cSuccessNone0.048744s0.108013s
Success
forkexecv-arg.cSuccessNone0.049168s0.097435s
Success
forkexecv.cSuccessNone0.048126s0.094725s
Success
forkfiles.cSuccessNone0.051728s0.105501s
Success
forkmalloc.cSuccessNone0.052858s0.099798s
Success
forknodup.cSuccessNone0.052534s0.109351s
Success
function-ptr.cSuccessNone0.047637s0.086242s
Success
getegid_syscall.cSuccessNone0.051299s0.181839s
Success
getgid_syscall.cSuccessNone0.054518s0.189044s
Success
getpid.cSuccessNone0.044140s0.082345s
Success
getpid_syscall.cSuccessNone0.053845s0.203155s
Success
getppid.cSuccessNone0.051251s0.097644s
Success
getppid_syscall.cSuccessNone0.054930s0.167730s
Success
getuid.cSuccessNone0.051425s0.093052s
Success
getuid_syscall.cSuccessNone0.049676s0.129445s
Success
hello-arg.cSuccessNone0.042423s0.082510s
Success
hello.cSuccessNone0.041218s0.077332s
Success
longjmp.cSuccessNone0.042787s0.084624s
Success
mutex.cSuccessNone2.053372s2.099270s
Success
printf_deadlock_smoke.cSuccessNone0.059432s0.123725s
Success
printf_thread_test.cSuccessNone0.048806s0.101012s
Success
sem_forks.cSuccessNone0.053472s0.108419s
Success
setsid.cSuccessNone0.044256s0.085364s
Success
template.cSuccessNone0.050255s0.112913s
Success
test_exec_nofork.cSuccessNone0.048829s0.095058s
Success
test_unlink_open_file.cSuccessNone0.046846s0.085945s
Success
thread-guard.cSuccessNone0.047917s0.095670s
Success
thread-test.cSuccessNone0.045813s0.086832s
Success
thread.cSuccessNone0.045984s0.088044s
Success
thread_cageid_race.cSuccessNone0.046265s0.107020s
Success
tls_test.cSuccessNone0.050340s0.100639s
Success
uname.cSuccessNone0.045350s0.082558s
Success
wait.cSuccessNone2.049252s2.098027s
Success
waitpid_anychild.cSuccessNone0.052274s0.098847s
Success
waitpid_syscall.cSuccessNone1.050624s1.125634s
Success
waitpid_wnohang.cSuccessNone0.052135s0.100521s
Success
Signal Tests
alarm.cSuccessNone7.049868s7.117921s
Success
eintr_fork_signal.cSuccessNone1.052141s1.107850s
Success
kill.cSuccessNone1.049786s1.097716s
Success
setitimer.cSuccessNone7.051532s7.127853s
Success
sigalrm.cSuccessNone2.051539s2.105727s
Success
sigaltstack.cSuccessNone0.053304s0.101659s
Success
sigchld.cSuccessNone1.052010s1.096214s
Success
signal-fork.cSuccessNone4.052797s4.099832s
Success
signal-simple.cSuccessNone0.051902s0.094275s
Success
signal_SIGCHLD.cSuccessNone0.048826s0.098361s
Success
signal_fork.cSuccessNone0.047468s0.098730s
Success
signal_int_ignored.cSuccessNone2.050768s2.098266s
Success
signal_kill_cleanup.cSuccessNone1.049102s1.095773s
Success
signal_procmask.cSuccessNone0.044991s0.090185s
Success
signal_read_interrupt.cSuccessNone0.554259s0.604758s
Success
signal_recursive.cSuccessNone0.046023s0.093160s
Success
signal_sa_mask.cSuccessNone0.044737s0.090368s
Success
signal_select_interrupt.cSuccessNone0.555509s0.606463s
Success
signal_write_interrupt.cSuccessNone1.053683s1.107334s
Success
sigpipe.cSuccessNone1.053278s1.103649s
Success
sigprocmask.cSuccessNone1.050269s1.096736s
Success
Fail Tests

Summary

MetricCount
Total Test Cases4
Number of Successes4
Number of Failures0
Number of Compilation Failure Native0
Number of Runtime Failure Native0
Number of Segmentation Fault Native0
Number of Timeout During Native0
Number of Lind Wasm Compile Failure0
Number of Lind Wasm Runtime Failure0
Number of Lind Wasm Segmentation Failure0
Number of Timeout During Lind Wasm run0
Number of Unknown Failure0
Number of C Compiler and Wasm Output mismatch0
Number of Fail Test: Native Succeeded (Should Fail)0
Number of Fail Test: Wasm Succeeded (Should Fail)0
Number of Fail Test: Both Native and Wasm Succeeded (Should Fail)0
Number of Fail Test: Native Compilation Failure (Should Succeed)0
Number of Fail Test: Wasm Compilation Failure (Should Succeed)0

Test Results by Category

Test CaseStatusError TypeNative TimeWasm TimeOutput
Dylink Tests
dlerror.cSuccessNone0.042530s0.082016s
Success
Memory Tests
mmap-negative1.cSuccessNone0.198283s0.088524s
Success
mmap-negative2.cSuccessNone0.112586s0.084539s
Success
Signal Tests
signal_resethand.cSuccessNone1.050444s1.095106s
Success

Comment on lines +799 to +805
///
/// Lind uses this during pthread creation to initialize the child thread's
/// stack pointer directly from the Wasmtime side. Previously this was done
/// through a small wasm helper object (`set_stack_pointer.o`) linked into
/// glibc. After removing that helper object, the runtime updates the
/// mutable `__stack_pointer` global directly instead.
///
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

this part of comments are not necessary

@qianxichen233
Copy link
Copy Markdown
Contributor

qianxichen233 commented Apr 27, 2026

should have a parallel PR on lind-wasm-apps side to remove all the reference to set_stack_pointer.o as well. e.g. https://github.com/Lind-Project/lind-wasm-apps/blob/97b7e6f7185f5e85bb39dff07f84d8d6e7069bad/cpython/compile_cpython.sh#L297

Look into compile_*.sh under each application in lind-wasm-apps to search for the reference

Both PR needs to be merged together otherwise it will break builds on app side

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.

glibc: depreciate set_stack_pointer.o

3 participants