// Copyright 2019 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package cpu const CacheLinePadSize = 64 // RISC-V doesn't have a 'cpuid' equivalent. On Linux we rely on the riscv_hwprobe syscall. func doinit() { options = []option{ {Name: "fastmisaligned", Feature: &RISCV64.HasFastMisaligned}, {Name: "v", Feature: &RISCV64.HasV}, {Name: "zbb", Feature: &RISCV64.HasZbb}, {Name: "zbc", Feature: &RISCV64.HasZbc}, {Name: "zvbb", Feature: &RISCV64.HasZvbb}, {Name: "zvbc", Feature: &RISCV64.HasZvbc}, {Name: "zvkg", Feature: &RISCV64.HasZvkg}, {Name: "zvkned", Feature: &RISCV64.HasZvkned}, {Name: "zvknha", Feature: &RISCV64.HasZvknha}, {Name: "zvknhb", Feature: &RISCV64.HasZvknhb}, {Name: "zvksed", Feature: &RISCV64.HasZvksed}, {Name: "zvksh", Feature: &RISCV64.HasZvksh}, {Name: "zvkt", Feature: &RISCV64.HasZvkt}, } osInit() } func isSet(hwc uint, value uint) bool { return hwc&value != 0 }