X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?p=palacios.git;a=blobdiff_plain;f=palacios%2Fsrc%2Fpalacios%2Fsvm_lowlevel.S;h=975fe9891deb2bb8a2c9c1ef5980a2abcf4de839;hp=151e54b0e84b2bfe1162c086bb21095a343241ab;hb=33f53e0ad567d9b810015efacd85e8062a0efec1;hpb=9d020f5ec16f13012fb1cc72c0871c3f21d4895e diff --git a/palacios/src/palacios/svm_lowlevel.S b/palacios/src/palacios/svm_lowlevel.S index 151e54b..975fe98 100644 --- a/palacios/src/palacios/svm_lowlevel.S +++ b/palacios/src/palacios/svm_lowlevel.S @@ -158,6 +158,8 @@ v3_svm_launch: // VMCB => RDI // vm_regs => RSI +// ptr to fs => RDX +// ptr to gs => RCX v3_svm_launch: pushf; @@ -165,7 +167,20 @@ v3_svm_launch: push %gs; PUSHA - pushq %rsi + + +// pushq %rdx // fs +// pushq %rcx // gs + + +// pushq (%rdx) +// pop %fs +// pushq (%rcx) +// pop %gs + + + + pushq %rsi movq %rdi, %rax Restore_SVM_Registers(%rsi); @@ -180,6 +195,18 @@ v3_svm_launch: addq $8, %rsp +// popq %rcx +// popq %rdx + +// push %fs +// popq %rax +// movq %rax, (%rdx) + +// push %gs +// popq %rax +// movq %rax, (%rcx) + + POPA pop %gs; pop %fs;