fix riscv64 a_cas inline asm operand sign extension
authorLuís Marques <luismarques@lowrisc.org>
Wed, 15 Jan 2020 13:24:41 +0000 (13:24 +0000)
committerRich Felker <dalias@aerifal.cx>
Wed, 22 Jan 2020 19:57:16 +0000 (14:57 -0500)
commit83350eb17b9cb355e3f08b0340c4f1e8c437fac9
tree5e75c517d1c19035dc03373503f58b2febff0c2c
parenta2e71304f358c5dbaf44e0b4c6fd343e8cd236e2
fix riscv64 a_cas inline asm operand sign extension

This patch adds an explicit cast to the int arguments passed to the
inline asm used in the RISC-V's implementation of `a_cas`, to ensure
that they are properly sign extended to 64 bits. They aren't
automatically sign extended by Clang, and GCC technically also doesn't
guarantee that they will be sign extended.
arch/riscv64/atomic_arch.h