feat: std.socket nonblocking surface — fcntl, errno, typed _nb wrappers (PLAN-HTTPZ S2)
set_nonblocking (C-variadic fcntl), errno via __error (darwin; C3 selects per-OS), and accept_nb/read_nb/write_nb returning a typed SockErr — WouldBlock / Closed / Fault — so readiness-loop callers never parse -1/errno pairs. EINTR retries internally; accept_nb skips ECONNABORTED. Adds connect, shutdown, socketpair, AF_UNIX, SHUT_*. examples/1630 pins the result algebra on a socketpair and a nonblocking TCP listener (WouldBlock on empty backlog, accept after loopback connect); verified under sx run AND sx build. The .ir snapshot regen is mechanical: new std decls shift @str/@tag.str numbering and grow the type table (179 -> 185).
This commit is contained in:
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
|
||||
|
||||
@@ -311,9 +311,42 @@ declare i32 @listen(i32, i32) #0
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @accept(i32, ptr, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @connect(i32, ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @shutdown(i32, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @socketpair(i32, i32, i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @fcntl(i32, i32, ...) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i16 @htons(ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @__error() #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @errno(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @is_wouldblock(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @set_nonblocking(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @accept_nb(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @read_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @write_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @mem_realloc.3(ptr, ptr, ptr, i64, i64, i64) #0
|
||||
|
||||
@@ -794,6 +827,15 @@ declare void @log_emit(ptr, ptr, ptr) #0
|
||||
; Function Attrs: nounwind
|
||||
declare void @assert.74(ptr, i1) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @clock_gettime(i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @now_secs(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @mono_ms(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
define internal i64 @accept_c(ptr %0) #0 {
|
||||
entry:
|
||||
|
||||
@@ -803,9 +803,42 @@ declare i32 @listen(i32, i32) #0
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @accept(i32, ptr, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @connect(i32, ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @shutdown(i32, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @socketpair(i32, i32, i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @fcntl(i32, i32, ...) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i16 @htons(ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @__error() #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @errno(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @is_wouldblock(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @set_nonblocking(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @accept_nb(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @read_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @write_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @mem_realloc.3(ptr, ptr, ptr, i64, i64, i64) #0
|
||||
|
||||
@@ -1286,6 +1319,15 @@ declare void @log_emit(ptr, ptr, ptr) #0
|
||||
; Function Attrs: nounwind
|
||||
declare void @assert.74(ptr, i1) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @clock_gettime(i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @now_secs(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @mono_ms(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare void @BuildOptions.add_link_flag.75(i64, ptr) #0
|
||||
|
||||
|
||||
@@ -819,9 +819,42 @@ declare i32 @listen(i32, i32) #0
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @accept(i32, ptr, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @connect(i32, ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @shutdown(i32, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @socketpair(i32, i32, i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @fcntl(i32, i32, ...) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i16 @htons(ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @__error() #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @errno(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @is_wouldblock(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @set_nonblocking(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @accept_nb(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @read_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @write_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @mem_realloc.3(ptr, ptr, ptr, i64, i64, i64) #0
|
||||
|
||||
@@ -1302,6 +1335,15 @@ declare void @log_emit(ptr, ptr, ptr) #0
|
||||
; Function Attrs: nounwind
|
||||
declare void @assert.74(ptr, i1) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @clock_gettime(i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @now_secs(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @mono_ms(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare void @BuildOptions.add_link_flag.75(i64, ptr) #0
|
||||
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -795,9 +795,42 @@ declare i32 @listen(i32, i32) #0
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @accept(i32, ptr, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @connect(i32, ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @shutdown(i32, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @socketpair(i32, i32, i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @fcntl(i32, i32, ...) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i16 @htons(ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @__error() #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @errno(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @is_wouldblock(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @set_nonblocking(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @accept_nb(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @read_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @write_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @mem_realloc.3(ptr, ptr, ptr, i64, i64, i64) #0
|
||||
|
||||
@@ -1278,6 +1311,15 @@ declare void @log_emit(ptr, ptr, ptr) #0
|
||||
; Function Attrs: nounwind
|
||||
declare void @assert.74(ptr, i1) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @clock_gettime(i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @now_secs(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @mono_ms(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare void @BuildOptions.add_link_flag.75(i64, ptr) #0
|
||||
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -821,9 +821,42 @@ declare i32 @listen(i32, i32) #0
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @accept(i32, ptr, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @connect(i32, ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @shutdown(i32, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @socketpair(i32, i32, i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @fcntl(i32, i32, ...) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i16 @htons(ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @__error() #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @errno(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @is_wouldblock(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @set_nonblocking(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @accept_nb(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @read_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @write_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @mem_realloc.3(ptr, ptr, ptr, i64, i64, i64) #0
|
||||
|
||||
@@ -1304,6 +1337,15 @@ declare void @log_emit(ptr, ptr, ptr) #0
|
||||
; Function Attrs: nounwind
|
||||
declare void @assert.74(ptr, i1) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @clock_gettime(i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @now_secs(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @mono_ms(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare void @BuildOptions.add_link_flag.75(i64, ptr) #0
|
||||
|
||||
|
||||
@@ -797,9 +797,42 @@ declare i32 @listen(i32, i32) #0
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @accept(i32, ptr, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @connect(i32, ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @shutdown(i32, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @socketpair(i32, i32, i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @fcntl(i32, i32, ...) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i16 @htons(ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @__error() #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @errno(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @is_wouldblock(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @set_nonblocking(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @accept_nb(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @read_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @write_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @mem_realloc.3(ptr, ptr, ptr, i64, i64, i64) #0
|
||||
|
||||
@@ -1280,6 +1313,15 @@ declare void @log_emit(ptr, ptr, ptr) #0
|
||||
; Function Attrs: nounwind
|
||||
declare void @assert.74(ptr, i1) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @clock_gettime(i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @now_secs(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @mono_ms(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
define internal void @unused_jni(ptr %0, ptr %1, ptr %2) #0 {
|
||||
entry:
|
||||
|
||||
@@ -795,9 +795,42 @@ declare i32 @listen(i32, i32) #0
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @accept(i32, ptr, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @connect(i32, ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @shutdown(i32, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @socketpair(i32, i32, i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @fcntl(i32, i32, ...) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i16 @htons(ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @__error() #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @errno(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @is_wouldblock(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @set_nonblocking(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @accept_nb(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @read_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @write_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @mem_realloc.3(ptr, ptr, ptr, i64, i64, i64) #0
|
||||
|
||||
@@ -1278,6 +1311,15 @@ declare void @log_emit(ptr, ptr, ptr) #0
|
||||
; Function Attrs: nounwind
|
||||
declare void @assert.74(ptr, i1) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @clock_gettime(i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @now_secs(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @mono_ms(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
define internal i32 @read_int(ptr %0, ptr %1, ptr %2) #0 {
|
||||
entry:
|
||||
|
||||
@@ -795,9 +795,42 @@ declare i32 @listen(i32, i32) #0
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @accept(i32, ptr, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @connect(i32, ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @shutdown(i32, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @socketpair(i32, i32, i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @fcntl(i32, i32, ...) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i16 @htons(ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @__error() #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @errno(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @is_wouldblock(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @set_nonblocking(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @accept_nb(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @read_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @write_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @mem_realloc.3(ptr, ptr, ptr, i64, i64, i64) #0
|
||||
|
||||
@@ -1278,6 +1311,15 @@ declare void @log_emit(ptr, ptr, ptr) #0
|
||||
; Function Attrs: nounwind
|
||||
declare void @assert.74(ptr, i1) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @clock_gettime(i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @now_secs(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @mono_ms(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
define internal i64 @read_long(ptr %0, ptr %1, ptr %2) #0 {
|
||||
entry:
|
||||
|
||||
@@ -795,9 +795,42 @@ declare i32 @listen(i32, i32) #0
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @accept(i32, ptr, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @connect(i32, ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @shutdown(i32, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @socketpair(i32, i32, i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @fcntl(i32, i32, ...) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i16 @htons(ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @__error() #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @errno(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @is_wouldblock(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @set_nonblocking(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @accept_nb(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @read_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @write_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @mem_realloc.3(ptr, ptr, ptr, i64, i64, i64) #0
|
||||
|
||||
@@ -1278,6 +1311,15 @@ declare void @log_emit(ptr, ptr, ptr) #0
|
||||
; Function Attrs: nounwind
|
||||
declare void @assert.74(ptr, i1) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @clock_gettime(i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @now_secs(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @mono_ms(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
define internal double @read_double(ptr %0, ptr %1, ptr %2) #0 {
|
||||
entry:
|
||||
|
||||
@@ -795,9 +795,42 @@ declare i32 @listen(i32, i32) #0
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @accept(i32, ptr, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @connect(i32, ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @shutdown(i32, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @socketpair(i32, i32, i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @fcntl(i32, i32, ...) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i16 @htons(ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @__error() #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @errno(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @is_wouldblock(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @set_nonblocking(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @accept_nb(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @read_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @write_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @mem_realloc.3(ptr, ptr, ptr, i64, i64, i64) #0
|
||||
|
||||
@@ -1278,6 +1311,15 @@ declare void @log_emit(ptr, ptr, ptr) #0
|
||||
; Function Attrs: nounwind
|
||||
declare void @assert.74(ptr, i1) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @clock_gettime(i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @now_secs(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @mono_ms(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
define internal i1 @read_bool(ptr %0, ptr %1, ptr %2) #0 {
|
||||
entry:
|
||||
|
||||
@@ -795,9 +795,42 @@ declare i32 @listen(i32, i32) #0
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @accept(i32, ptr, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @connect(i32, ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @shutdown(i32, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @socketpair(i32, i32, i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @fcntl(i32, i32, ...) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i16 @htons(ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @__error() #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @errno(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @is_wouldblock(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @set_nonblocking(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @accept_nb(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @read_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @write_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @mem_realloc.3(ptr, ptr, ptr, i64, i64, i64) #0
|
||||
|
||||
@@ -1278,6 +1311,15 @@ declare void @log_emit(ptr, ptr, ptr) #0
|
||||
; Function Attrs: nounwind
|
||||
declare void @assert.74(ptr, i1) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @clock_gettime(i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @now_secs(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @mono_ms(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
define internal ptr @get_window(ptr %0, ptr %1, ptr %2) #0 {
|
||||
entry:
|
||||
|
||||
@@ -795,9 +795,42 @@ declare i32 @listen(i32, i32) #0
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @accept(i32, ptr, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @connect(i32, ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @shutdown(i32, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @socketpair(i32, i32, i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @fcntl(i32, i32, ...) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i16 @htons(ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @__error() #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @errno(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @is_wouldblock(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @set_nonblocking(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @accept_nb(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @read_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @write_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @mem_realloc.3(ptr, ptr, ptr, i64, i64, i64) #0
|
||||
|
||||
@@ -1278,6 +1311,15 @@ declare void @log_emit(ptr, ptr, ptr) #0
|
||||
; Function Attrs: nounwind
|
||||
declare void @assert.74(ptr, i1) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @clock_gettime(i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @now_secs(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @mono_ms(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
define internal i32 @call_static_max(ptr %0, ptr %1, ptr %2) #0 {
|
||||
entry:
|
||||
|
||||
@@ -795,9 +795,42 @@ declare i32 @listen(i32, i32) #0
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @accept(i32, ptr, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @connect(i32, ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @shutdown(i32, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @socketpair(i32, i32, i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @fcntl(i32, i32, ...) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i16 @htons(ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @__error() #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @errno(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @is_wouldblock(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @set_nonblocking(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @accept_nb(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @read_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @write_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @mem_realloc.3(ptr, ptr, ptr, i64, i64, i64) #0
|
||||
|
||||
@@ -1278,6 +1311,15 @@ declare void @log_emit(ptr, ptr, ptr) #0
|
||||
; Function Attrs: nounwind
|
||||
declare void @assert.74(ptr, i1) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @clock_gettime(i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @now_secs(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @mono_ms(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
define internal void @unused_jni(ptr %0, ptr %1, ptr %2) #0 {
|
||||
entry:
|
||||
|
||||
@@ -795,9 +795,42 @@ declare i32 @listen(i32, i32) #0
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @accept(i32, ptr, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @connect(i32, ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @shutdown(i32, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @socketpair(i32, i32, i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @fcntl(i32, i32, ...) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i16 @htons(ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @__error() #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @errno(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @is_wouldblock(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @set_nonblocking(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @accept_nb(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @read_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @write_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @mem_realloc.3(ptr, ptr, ptr, i64, i64, i64) #0
|
||||
|
||||
@@ -1278,6 +1311,15 @@ declare void @log_emit(ptr, ptr, ptr) #0
|
||||
; Function Attrs: nounwind
|
||||
declare void @assert.74(ptr, i1) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @clock_gettime(i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @now_secs(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @mono_ms(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
define internal void @unused_jni(ptr %0, ptr %1, ptr %2) #0 {
|
||||
entry:
|
||||
|
||||
@@ -318,9 +318,42 @@ declare i32 @listen(i32, i32) #0
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @accept(i32, ptr, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @connect(i32, ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @shutdown(i32, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @socketpair(i32, i32, i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @fcntl(i32, i32, ...) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i16 @htons(ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @__error() #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @errno(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @is_wouldblock(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i1 @set_nonblocking(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @accept_nb(ptr, i32) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @read_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare [2 x i64] @write_nb(ptr, i32, ptr, i64) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare ptr @mem_realloc.3(ptr, ptr, ptr, i64, i64, i64) #0
|
||||
|
||||
@@ -801,6 +834,15 @@ declare void @log_emit(ptr, ptr, ptr) #0
|
||||
; Function Attrs: nounwind
|
||||
declare void @assert.74(ptr, i1) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i32 @clock_gettime(i32, ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @now_secs(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare i64 @mono_ms(ptr) #0
|
||||
|
||||
; Function Attrs: nounwind
|
||||
declare void @BuildOptions.add_link_flag.75(i64, ptr) #0
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
|
||||
|
||||
1
examples/expected/1630-socket-nonblocking.exit
Normal file
1
examples/expected/1630-socket-nonblocking.exit
Normal file
@@ -0,0 +1 @@
|
||||
0
|
||||
1
examples/expected/1630-socket-nonblocking.stderr
Normal file
1
examples/expected/1630-socket-nonblocking.stderr
Normal file
@@ -0,0 +1 @@
|
||||
|
||||
6
examples/expected/1630-socket-nonblocking.stdout
Normal file
6
examples/expected/1630-socket-nonblocking.stdout
Normal file
@@ -0,0 +1,6 @@
|
||||
empty read: WouldBlock
|
||||
pair round trip: 4 bytes
|
||||
peer close: Closed
|
||||
empty backlog: WouldBlock
|
||||
accept after connect: ok
|
||||
socket nonblocking ok
|
||||
Reference in New Issue
Block a user