cycleclock: Fix type conversion to match function return type on riscv64 (#1802)

Fixes builds with clang

src/cycleclock.h:213:10: error: implicit conversion changes signedness: 'uint64_t' (aka 'unsigned long') to 'int64_t' (aka 'long') [-Werror,-Wsign-conversion]
     213 |   return cycles;
         |   ~~~~~~ ^~~~~~
   1 error generated.
diff --git a/src/cycleclock.h b/src/cycleclock.h
index c657414..bd62f5d 100644
--- a/src/cycleclock.h
+++ b/src/cycleclock.h
@@ -210,7 +210,7 @@
 #else
   uint64_t cycles;
   asm volatile("rdtime %0" : "=r"(cycles));
-  return cycles;
+  return static_cast<int64_t>(cycles);
 #endif
 #elif defined(__e2k__) || defined(__elbrus__)
   struct timeval tv;