A
lgorithmique
N
umérique
D
istribuée
Public GIT Repository
projects
/
simgrid.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
be more robust to strange failures when handling exceptions
[simgrid.git]
/
src
/
xbt
/
win32_ucontext.c
diff --git
a/src/xbt/win32_ucontext.c
b/src/xbt/win32_ucontext.c
index
b538e09
..
80dd2e5
100644
(file)
--- a/
src/xbt/win32_ucontext.c
+++ b/
src/xbt/win32_ucontext.c
@@
-1,4
+1,4
@@
-/* Copyright (c) 2010-2012, 2014. The SimGrid Team.
+/* Copyright (c) 2010-2012, 2014
-2015
. The SimGrid Team.
* All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
* All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
@@
-65,16
+65,16
@@
int makecontext(ucontext_t * ucp, void (*func) (), int argc, ...)
}
/* Set the instruction and the stack pointer */
}
/* Set the instruction and the stack pointer */
- #if
def _I_X86_
+ #if
defined(_I_X86_) || defined(__i386) || defined(__i386__) || defined(_M_IX86)
ucp->uc_mcontext.Eip = (DWORD) func;
ucp->uc_mcontext.Esp = (DWORD) sp - sizeof(void*);
ucp->uc_mcontext.Eip = (DWORD) func;
ucp->uc_mcontext.Esp = (DWORD) sp - sizeof(void*);
- #endif
- #ifdef _IA64_
+ #elif defined(_IA64_) || defined(__ia64) || defined(__ia64__)
# error "_IA64_"
# error "_IA64_"
- #endif
- #ifdef _AMD64_
+ #elif defined _AMD64_ || defined(__x86_64) || defined(__x86_64__) || defined(_M_X64)
ucp->uc_mcontext.Rip = (DWORD64) func;
ucp->uc_mcontext.Rsp = (DWORD64) sp - sizeof(void*);
ucp->uc_mcontext.Rip = (DWORD64) func;
ucp->uc_mcontext.Rsp = (DWORD64) sp - sizeof(void*);
+ #else
+ #error "No architecture defined for Windows build."
#endif
/* Save/Restore the full machine context */
#endif
/* Save/Restore the full machine context */
@@
-105,4
+105,3
@@
int swapcontext(ucontext_t * oucp, const ucontext_t * ucp)
}
return ret;
}
}
return ret;
}
-