X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Fsrc%2Fpalacios%2Fsvm_lowlevel.S;h=975fe9891deb2bb8a2c9c1ef5980a2abcf4de839;hb=33f53e0ad567d9b810015efacd85e8062a0efec1;hp=5616b7f7066b6e4612e3408696c64aff417e97db;hpb=3574c981404a1c812d369132db09ec2a27d59a5d;p=palacios.git diff --git a/palacios/src/palacios/svm_lowlevel.S b/palacios/src/palacios/svm_lowlevel.S index 5616b7f..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,18 +167,25 @@ 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); - - vmload; vmrun; vmsave; @@ -186,8 +195,16 @@ 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