* @brief Performs a strexh operation. * @param addr Address to perform the operation on. * @param val Value to store. * @return Whether the operation was successful. */
| 98 | * @return Whether the operation was successful. |
| 99 | */ |
| 100 | static inline bool __strexh(u16* addr, u16 val) |
| 101 | { |
| 102 | bool res; |
| 103 | __asm__ __volatile__("strexh %[res], %[val], %[addr]" : [res] "=&r" (res) : [val] "r" (val), [addr] "Q" (*addr)); |
| 104 | return res; |
| 105 | } |
| 106 | |
| 107 | /** |
| 108 | * @brief Performs a ldrexb operation. |
no outgoing calls
no test coverage detected