zig/test/cases/print_u32s.zig
mlugg b3f9fe6d04
Unify incremental test cases and disable many
The self-hosted aarch64 backend is not currently functional due to the
Liveness changes. A previous commit disabled aarch64 on the behavior
tests; this commit disables it and arm for the test cases. Moreover, all
incremental test cases have been unified into shared cross-platform
cases, which can be gradually enabled as the backends improve.
2023-04-20 20:49:36 +01:00

29 lines
568 B
Zig

const std = @import("std");
pub fn main() void {
printNumberHex(0x00000000);
printNumberHex(0xaaaaaaaa);
printNumberHex(0xdeadbeef);
printNumberHex(0x31415926);
}
fn printNumberHex(x: u32) void {
const digit_chars = "0123456789abcdef";
var i: u5 = 28;
while (true) : (i -= 4) {
const digit = (x >> i) & 0xf;
_ = std.os.write(1, &.{digit_chars[digit]}) catch {};
if (i == 0) break;
}
_ = std.os.write(1, "\n") catch {};
}
// run
// target=x86_64-macos
//
// 00000000
// aaaaaaaa
// deadbeef
// 31415926
//