aboutsummaryrefslogtreecommitdiff
path: root/system.old/libraries/os/cpu.zig
blob: 1f3ea53c1f84f2dc3bc1bf82fb6409c74b8bf79b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
//! CPU information

const sys = @import("sys");
const types = @import("types.zig");

const ERROR_RESULT: u64 = @bitCast(@as(i64, -1));

pub fn info(buffer: []u8) ?[]const u8 {
    const result = sys.syscall(.cpuinfo, .{
        @intFromPtr(buffer.ptr),
        buffer.len,
    });

    if (result == ERROR_RESULT or result == 0) {
        return null;
    }

    return buffer[0..@intCast(result)];
}