Fixed inline assembly constraints in msr.c
This commit is contained in:
@@ -4,8 +4,8 @@ void read_msr(enum msr_id_t msr_addr, uint64_t *value)
|
||||
{
|
||||
uint64_t v;
|
||||
asm volatile("rdmsr"
|
||||
: "=edx:eax" (v)
|
||||
: "ecx" (msr_addr));
|
||||
: "=A" (v)
|
||||
: "c" (msr_addr));
|
||||
*value = v;
|
||||
}
|
||||
|
||||
@@ -13,5 +13,5 @@ void write_msr(enum msr_id_t msr_addr, uint64_t *value)
|
||||
{
|
||||
uint64_t v = *value;
|
||||
asm volatile("wrmsr"
|
||||
:: "ecx"(msr_addr), "A"(v));
|
||||
:: "c"(msr_addr), "A"(v));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user