- SYSINFO_KEY_STORE(h, key_load1, newSVuv(si.loads[0]));
- SYSINFO_KEY_STORE(h, key_load5, newSVuv(si.loads[1]));
- SYSINFO_KEY_STORE(h, key_load15, newSVuv(si.loads[2]));
+
+ l = ((NV) si.loads[0]) / ((NV) (((U32) 1) << ((U32) SI_LOAD_SHIFT)));
+ SYSINFO_KEY_STORE(h, key_load1, newSVnv(l));
+ l = ((NV) si.loads[1]) / ((NV) (((U32) 1) << ((U32) SI_LOAD_SHIFT)));
+ SYSINFO_KEY_STORE(h, key_load5, newSVnv(l));
+ l = ((NV) si.loads[2]) / ((NV) (((U32) 1) << ((U32) SI_LOAD_SHIFT)));
+ SYSINFO_KEY_STORE(h, key_load15, newSVnv(l));
+