From 4e49d24df980e3f4b853d62af01ed68cb2c622d2 Mon Sep 17 00:00:00 2001 From: gingerBill Date: Mon, 30 May 2022 16:08:06 +0100 Subject: [PATCH] Add enable_target_feature to ABM --- core/simd/x86/abm.odin | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/core/simd/x86/abm.odin b/core/simd/x86/abm.odin index 5d7549ab3..79b806242 100644 --- a/core/simd/x86/abm.odin +++ b/core/simd/x86/abm.odin @@ -3,21 +3,21 @@ package simd_x86 import "core:intrinsics" -@(require_results) +@(require_results, enable_target_feature="lzcnt") _lzcnt_u32 :: #force_inline proc "c" (x: u32) -> u32 { return intrinsics.count_leading_zeros(x) } -@(require_results) +@(require_results, enable_target_feature="popcnt") _popcnt32 :: #force_inline proc "c" (x: u32) -> i32 { return i32(intrinsics.count_ones(x)) } when ODIN_ARCH == .amd64 { - @(require_results) + @(require_results, enable_target_feature="lzcnt") _lzcnt_u64 :: #force_inline proc "c" (x: u64) -> u64 { return intrinsics.count_leading_zeros(x) } - @(require_results) + @(require_results, enable_target_feature="popcnt") _popcnt64 :: #force_inline proc "c" (x: u64) -> i32 { return i32(intrinsics.count_ones(x)) }