Linux Audio

Check our new training course

Loading...
Note: File does not exist in v6.13.7.
 1/* SPDX-License-Identifier: GPL-2.0 */
 2/*
 3 * Copyright (C) 2019  Arm Limited
 4 * Original author: Dave Martin <Dave.Martin@arm.com>
 5 */
 6
 7#ifndef COMPILER_H
 8#define COMPILER_H
 9
10#define __always_unused __attribute__((__unused__))
11#define __noreturn __attribute__((__noreturn__))
12#define __unreachable() __builtin_unreachable()
13
14/* curse(e) has value e, but the compiler cannot assume so */
15#define curse(e) ({				\
16	__typeof__(e) __curse_e = (e);		\
17	asm ("" : "+r" (__curse_e));		\
18	__curse_e;				\
19})
20
21#endif /* ! COMPILER_H */