X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Fsrc%2Fgeekos%2Fsvm_lowlevel.asm;h=fcb495f646f2c5146e44a57b3dcc1ca9340d9a2b;hb=04fc4c8fbac29e04f0d0817a2906687c2c972559;hp=57ea853114d557c75b41315822896033af4a116c;hpb=4939ecae04ce6416f404670640620a23aee9b914;p=palacios.git diff --git a/palacios/src/geekos/svm_lowlevel.asm b/palacios/src/geekos/svm_lowlevel.asm index 57ea853..fcb495f 100644 --- a/palacios/src/geekos/svm_lowlevel.asm +++ b/palacios/src/geekos/svm_lowlevel.asm @@ -8,6 +8,10 @@ %include "symbol.asm" +EXPORT GetGDTR +EXPORT GetIDTR + + EXTERN handle_svm_exit @@ -30,6 +34,32 @@ EXPORT launch_svm +GetGDTR: + push ebp + mov ebp, esp + pusha + mov ebx, [ebp + 8] + sgdt [ebx] + + popa + pop ebp + ret + + + +GetIDTR: + push ebp + mov ebp, esp + pusha + mov ebx, [ebp + 8] + sgdt [ebx] + + popa + pop ebp + ret + + + ; I think its safe to say that there are some pretty serious register issues... launch_svm: push ebp @@ -43,9 +73,6 @@ launch_svm: pop ebp ret -%endif - - ; eventual svm_launch @@ -88,4 +115,9 @@ safe_svm_launch: popf popa pop ebp - ret \ No newline at end of file + ret + + +%endif + +