aboutsummaryrefslogtreecommitdiffstats
path: root/code/qcommon/vm_x86_64.c
diff options
context:
space:
mode:
authorludwig <ludwig@edf5b092-35ff-0310-97b2-ce42778d08ea>2005-11-06 16:32:42 +0000
committerludwig <ludwig@edf5b092-35ff-0310-97b2-ce42778d08ea>2005-11-06 16:32:42 +0000
commitae16f78e7b223397700b6efac9dd4bac9ba02ae1 (patch)
tree97b94bd92c97f05044ebec91a89081537dbfb866 /code/qcommon/vm_x86_64.c
parentc3ef5aac8e28c95af131819af064af04a28f1b1d (diff)
downloadioquake3-aero-ae16f78e7b223397700b6efac9dd4bac9ba02ae1.tar.gz
ioquake3-aero-ae16f78e7b223397700b6efac9dd4bac9ba02ae1.zip
- crash solved
git-svn-id: svn://svn.icculus.org/quake3/trunk@297 edf5b092-35ff-0310-97b2-ce42778d08ea
Diffstat (limited to 'code/qcommon/vm_x86_64.c')
-rw-r--r--code/qcommon/vm_x86_64.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/code/qcommon/vm_x86_64.c b/code/qcommon/vm_x86_64.c
index 512a303..e92c377 100644
--- a/code/qcommon/vm_x86_64.c
+++ b/code/qcommon/vm_x86_64.c
@@ -554,6 +554,7 @@ void VM_Compile( vm_t *vm, vmHeader_t *header ) {
emit("push %%r8");
emit("push %%r9");
emit("push %%r10");
+ emit("push %%r10"); // align!
emit("negl %%eax"); // convert to actual number
emit("decl %%eax");
// first argument already in rdi
@@ -561,6 +562,7 @@ void VM_Compile( vm_t *vm, vmHeader_t *header ) {
emit("movq $%lu, %%rax", (unsigned long)callAsmCall);
emit("callq *%%rax");
emit("pop %%r10");
+ emit("pop %%r10");
emit("pop %%r9");
emit("pop %%r8");
emit("pop %%rdi");