Page MenuHomeFreeBSD

D46526.id142828.diff
No OneTemporary

D46526.id142828.diff

Index: sys/riscv/include/riscvreg.h
===================================================================
--- sys/riscv/include/riscvreg.h
+++ sys/riscv/include/riscvreg.h
@@ -189,13 +189,14 @@
(__builtin_constant_p(val) && ((u_long)(val) < 32))
#define csr_swap(csr, val) \
-({ if (CSR_ZIMM(val)) \
+({ u_long ret; \
+ if (CSR_ZIMM(val)) \
__asm __volatile("csrrwi %0, " #csr ", %1" \
- : "=r" (val) : "i" (val)); \
+ : "=r" (ret) : "i" (val)); \
else \
__asm __volatile("csrrw %0, " #csr ", %1" \
- : "=r" (val) : "r" (val)); \
- val; \
+ : "=r" (ret) : "r" (val)); \
+ ret; \
})
#define csr_write(csr, val) \

File Metadata

Mime Type
text/plain
Expires
Mon, Feb 9, 8:26 AM (1 h, 56 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
28558245
Default Alt Text
D46526.id142828.diff (697 B)

Event Timeline