Lines Matching full:ext
73 #define riscv_isa_extension_available(isa_bitmap, ext) \ argument
74 __riscv_isa_extension_available(isa_bitmap, RISCV_ISA_EXT_##ext)
77 riscv_has_extension_likely(const unsigned long ext) in riscv_has_extension_likely() argument
79 compiletime_assert(ext < RISCV_ISA_EXT_MAX, in riscv_has_extension_likely()
80 "ext must be < RISCV_ISA_EXT_MAX"); in riscv_has_extension_likely()
84 ALTERNATIVE("j %l[l_no]", "nop", 0, %[ext], 1) in riscv_has_extension_likely()
86 : [ext] "i" (ext) in riscv_has_extension_likely()
90 if (!__riscv_isa_extension_available(NULL, ext)) in riscv_has_extension_likely()
100 riscv_has_extension_unlikely(const unsigned long ext) in riscv_has_extension_unlikely() argument
102 compiletime_assert(ext < RISCV_ISA_EXT_MAX, in riscv_has_extension_unlikely()
103 "ext must be < RISCV_ISA_EXT_MAX"); in riscv_has_extension_unlikely()
107 ALTERNATIVE("nop", "j %l[l_yes]", 0, %[ext], 1) in riscv_has_extension_unlikely()
109 : [ext] "i" (ext) in riscv_has_extension_unlikely()
113 if (__riscv_isa_extension_available(NULL, ext)) in riscv_has_extension_unlikely()
122 static __always_inline bool riscv_cpu_has_extension_likely(int cpu, const unsigned long ext) in riscv_cpu_has_extension_likely() argument
124 if (IS_ENABLED(CONFIG_RISCV_ALTERNATIVE) && riscv_has_extension_likely(ext)) in riscv_cpu_has_extension_likely()
127 return __riscv_isa_extension_available(hart_isa[cpu].isa, ext); in riscv_cpu_has_extension_likely()
130 static __always_inline bool riscv_cpu_has_extension_unlikely(int cpu, const unsigned long ext) in riscv_cpu_has_extension_unlikely() argument
132 if (IS_ENABLED(CONFIG_RISCV_ALTERNATIVE) && riscv_has_extension_unlikely(ext)) in riscv_cpu_has_extension_unlikely()
135 return __riscv_isa_extension_available(hart_isa[cpu].isa, ext); in riscv_cpu_has_extension_unlikely()