Open
Description
Hardware: Starfive VisionFive 2
Zig version: 0.12.0-dev.2058+04ac028a2
Related issue: #4456
I've gone through and ran some of the essential tests, these are all which fail. I've skipped the non essential ones like non-native.
Behavior
Test [831/1896] test.neg f16... FAIL (TestUnexpectedResult)
Test [832/1896] test.neg f32/f64... FAIL (TestUnexpectedResult)
Looking at this specific failure, the f32
and f16
types fail the !math.signbit(-neg_nan)
parts of the test. These probably rely on the d
and f
extensions of the CPU.
Full log
Test [26/1896] test.align(@alignOf(T)) T does not force resolution of T... SKIP
Test [32/1896] test.alignment of zero-bit types is respected... SKIP
Test [90/1896] test.simple coroutine suspend and resume... SKIP
Test [91/1896] test.pass parameter to coroutine... SKIP
Test [92/1896] test.suspend at end of function... SKIP
Test [93/1896] test.local variable in async function... SKIP
Test [94/1896] test.calling an inferred async function... SKIP
Test [95/1896] test.@frameSize... SKIP
Test [96/1896] test.coroutine suspend, resume... SKIP
Test [97/1896] test.coroutine suspend with block... SKIP
Test [98/1896] test.coroutine await... SKIP
Test [99/1896] test.coroutine await early return... SKIP
Test [100/1896] test.async function with dot syntax... SKIP
Test [101/1896] test.async fn pointer in a struct field... SKIP
Test [102/1896] test.@asyncCall with return type... SKIP
Test [103/1896] test.async fn with inferred error set... SKIP
Test [104/1896] test.error return trace across suspend points - early return... SKIP
Test [105/1896] test.error return trace across suspend points - async return... SKIP
Test [106/1896] test.break from suspend... SKIP
Test [107/1896] test.heap allocated async function frame... SKIP
Test [108/1896] test.async function call return value... SKIP
Test [109/1896] test.suspension points inside branching control flow... SKIP
Test [110/1896] test.call async function which has struct return type... SKIP
Test [111/1896] test.pass string literal to async function... SKIP
Test [112/1896] test.await inside an errdefer... SKIP
Test [113/1896] test.try in an async function with error union and non-zero-bit payload... SKIP
Test [114/1896] test.returning a const error from async function... SKIP
Test [115/1896] test.async/await typical usage... SKIP
Test [116/1896] test.alignment of local variables in async functions... SKIP
Test [117/1896] test.no reason to resolve frame still works... SKIP
Test [118/1896] test.async call a generic function... SKIP
Test [119/1896] test.return from suspend block... SKIP
Test [120/1896] test.struct parameter to async function is copied to the frame... SKIP
Test [121/1896] test.cast fn to async fn when it is inferred to be async... SKIP
Test [122/1896] test.cast fn to async fn when it is inferred to be async, awaited directly..Test [122/1896] test.cast fn to async fn when it is inferred to be async, awaited direc... SKIP
Test [123/1896] test.await does not force async if callee is blocking... SKIP
Test [124/1896] test.recursive async function... SKIP
Test [125/1896] test.@asyncCall with comptime-known function, but not awaited directly... SKIP
Test [126/1896] test.@asyncCall with actual frame instead of byte buffer... SKIP
Test [127/1896] test.@asyncCall using the result location inside the frame... SKIP
Test [128/1896] test.@TypeOf an async function call of generic fn with error union type... SKIP
Test [129/1896] test.using @TypeOf on a generic function call... SKIP
Test [130/1896] test.recursive call of await @asyncCall with struct return type... SKIP
Test [131/1896] test.nosuspend function call... SKIP
Test [132/1896] test.await used in expression and awaiting fn with no suspend but async callTest [132/1896] test.await used in expression and awaiting fn with no suspend but asyn... SKIP
Test [133/1896] test.await used in expression after a fn call... SKIP
Test [134/1896] test.async fn call used in expression after a fn call... SKIP
Test [135/1896] test.suspend in for loop... SKIP
Test [136/1896] test.suspend in while loop... SKIP
Test [137/1896] test.correctly spill when returning the error union result of another async Test [137/1896] test.correctly spill when returning the error union result of another a... SKIP
Test [138/1896] test.spill target expr in a for loop... SKIP
Test [139/1896] test.spill target expr in a for loop, with a var decl in the loop body... SKIP
Test [140/1896] test.async call with @call... SKIP
Test [141/1896] test.async function passed 0-bit arg after non-0-bit arg... SKIP
Test [142/1896] test.async function passed align(16) arg after align(8) arg... SKIP
Test [143/1896] test.async function call resolves target fn frame, comptime func... SKIP
Test [144/1896] test.async function call resolves target fn frame, runtime func... SKIP
Test [145/1896] test.properly spill optional payload capture value... SKIP
Test [146/1896] test.handle defer interfering with return value spill... SKIP
Test [147/1896] test.take address of temporary async frame... SKIP
Test [148/1896] test.nosuspend await... SKIP
Test [149/1896] test.nosuspend on function calls... SKIP
Test [150/1896] test.nosuspend on async function calls... SKIP
Test [151/1896] test.nosuspend resume async function calls... SKIP
Test [152/1896] test.avoid forcing frame alignment resolution implicit cast to *anyopaque...Test [152/1896] test.avoid forcing frame alignment resolution implicit cast to *anyopaq... SKIP
Test [153/1896] test.@asyncCall with pass-by-value arguments... SKIP
Test [154/1896] test.@asyncCall with arguments having non-standard alignment... SKIP
Test [160/1896] test.128-bit cmpxchg... SKIP
Test [167/1896] test.atomicrmw with 128-bit ints... SKIP
Test [170/1896] test.coroutine await struct... SKIP
Test [242/1896] test.weird array and tuple initializations... SKIP
Test [244/1896] test.generic function uses return type of other generic function... SKIP
Test [318/1896] test.forced tail call... SKIP
Test [319/1896] test.inline call preserves tail call... SKIP
Test [334/1896] test.registers get overwritten when ignoring return... SKIP
Test [486/1896] test.type pun signed and unsigned as offset many pointer... SKIP
Test [487/1896] test.type pun signed and unsigned as array pointer with pointer arithemtic..Test [487/1896] test.type pun signed and unsigned as array pointer with pointer arithem... SKIP
Test [490/1896] test.type pun bits... SKIP
Test [491/1896] test.basic pointer preservation... SKIP
Test [492/1896] test.byte copy preserves linker value... SKIP
Test [493/1896] test.unordered byte copy preserves linker value... SKIP
Test [494/1896] test.shuffle chunks of linker value... SKIP
Test [495/1896] test.dance on linker values... SKIP
Test [496/1896] test.offset array ptr by element size... SKIP
Test [497/1896] test.offset instance by field size... SKIP
Test [498/1896] test.offset field ptr by enclosing array element size... SKIP
Test [734/1896] test.continue nested inline for loop... SKIP
Test [735/1896] test.continue nested inline for loop in named block expr... SKIP
Test [776/1896] test.cmp f80/c_longdouble... SKIP
Test [831/1896] test.neg f16... FAIL (TestUnexpectedResult)
/home/user/ExpidusOS/zig/lib/std/testing.zig:546:14: 0x1063b2d in expect (test)
if (!ok) return error.TestUnexpectedResult;
^
/home/user/ExpidusOS/zig/test/behavior/floatop.zig:1479:5: 0x110d6cf in testNeg__anon_11242 (test)
try expect(!math.signbit(-neg_nan));
^
/home/user/ExpidusOS/zig/test/behavior/floatop.zig:1401:5: 0x110d731 in test.neg f16 (test)
try testNeg(f16);
^
Test [832/1896] test.neg f32/f64... FAIL (TestUnexpectedResult)
/home/user/ExpidusOS/zig/lib/std/testing.zig:546:14: 0x1063b2d in expect (test)
if (!ok) return error.TestUnexpectedResult;
^
/home/user/ExpidusOS/zig/test/behavior/floatop.zig:1479:5: 0x110dd25 in testNeg__anon_11268 (test)
try expect(!math.signbit(-neg_nan));
^
/home/user/ExpidusOS/zig/test/behavior/floatop.zig:1412:5: 0x110e3d7 in test.neg f32/f64 (test)
try testNeg(f32);
^
Test [1261/1896] test.@shuffle bool 2... SKIP
Test [1503/1896] test.thread local variable... SKIP
Test [1504/1896] test.pointer to thread local array... SKIP
Test [1505/1896] test.reference a global threadlocal variable... SKIP
Test [1592/1896] test.Type.AnyFrame... SKIP
Test [1632/1896] test.type info: anyframe and anyframe->T... SKIP
Test [1637/1896] test.type info for async frames... SKIP
Test [1748/1896] test.reinterpret extern union... SKIP
Test [1806/1896] test.vector shift operators... SKIP
Test [1831/1896] test.store vector with memset... SKIP
Test [1890/1896] test.rw constraint (x86_64)... SKIP
Test [1891/1896] test.asm modifiers (AArch64)... SKIP
1793 passed; 101 skipped; 2 failed.
error: the following test command failed with exit code 1:
/home/user/ExpidusOS/zig/zig-cache/o/bde272f6c7ccf19e2e894e613fbc0b72/test
real 3m49.852s
user 3m47.692s
sys 0m2.552s
std
Will share once LLVM emit object
finishes, may take a few days