Try   HackMD

linux2025-homework3

注意書寫規範!

KXO

zoberst.c

一開始編譯 kxo 時發生錯誤,其原因為 zobrist.c 中的 u128 未定義,暫時透過新增定義解決

#define u128 __uint128_t

但詢問 chatgpt 發現該操作存在風險,因為並非所有架構都支援 __uint128_t,查看該函式的程式碼

static inline u64 wyhash64_stateless(u64 *seed)
{
    *seed += 0x60bee2bee120fc15;
    u128 tmp;
    tmp = (u128) *seed * 0xa3b195354a39b70d;
    u64 m1 = (tmp >> 64) ^ tmp;
    tmp = (u128) m1 * 0x1b03738712fad5c9;
    u64 m2 = (tmp >> 64) ^ tmp;
    return m2;
}

說好的進度呢?