Remove the BUILD_INFO_FILE variable
[akaros.git] / kern / arch / x86 / x86.h
index 993bd52..9c49ef0 100644 (file)
 #define X86_CR8_TPR    0x0000000F /* task priority register */
 
 #ifndef __ASSEMBLER__
+
 static inline uint8_t inb(int port) __attribute__((always_inline));
 static inline void insb(int port, void *addr, int cnt)
               __attribute__((always_inline));
@@ -448,11 +449,15 @@ static inline uint64_t read_msr(uint32_t reg)
        return (uint64_t)edx << 32 | eax;
 }
 
+static void split_msr_val(uint64_t val, uint32_t *high32, uint32_t *low32)
+{
+       *high32 = val >> 32;
+       *low32 = val & 0xffffffff;
+}
+
 static inline void write_msr(uint32_t reg, uint64_t val)
 {
-       asm volatile("wrmsr" : : "d"((uint32_t)(val >> 32)),
-                                "a"((uint32_t)(val & 0xFFFFFFFF)),
-                                "c"(reg));
+       asm volatile("wrmsr" : : "d"(val >> 32), "a"(val & 0xFFFFFFFF), "c"(reg));
 }
 
 static inline void write_mmreg32(uintptr_t reg, uint32_t val)