/* * Copyright (c) 2023 Intel Corporation * * SPDX-License-Identifier: Apache-2.0 */ #include #include #ifdef CONFIG_XTENSA_MORE_SPIN_RELAX_NOPS /* Some compilers might "optimize out" (i.e. remove) continuous NOPs. * So force no optimization to avoid that. */ __no_optimization void arch_spin_relax(void) { #define NOP1(_, __) __asm__ volatile("nop.n;"); LISTIFY(CONFIG_XTENSA_NUM_SPIN_RELAX_NOPS, NOP1, (;)) #undef NOP1 } #endif /* CONFIG_XTENSA_MORE_SPIN_RELAX_NOPS */