mirror of
https://github.com/kanjitalk755/macemu.git
synced 2024-07-06 00:28:55 +00:00
more precise callee-saved register set
This commit is contained in:
parent
12f103a83a
commit
e534b07a70
@ -111,11 +111,12 @@ uae_u8 call_saved[]={0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0};
|
|||||||
by pushing, even though they are "saved" across function calls
|
by pushing, even though they are "saved" across function calls
|
||||||
*/
|
*/
|
||||||
#if defined(__x86_64__)
|
#if defined(__x86_64__)
|
||||||
/* callee-saved registers as defined by Linux/x86_64 ABI: rbx, rbp, rsp, r12 - r15 */
|
/* callee-saved registers as defined by Linux AMD64 ABI: rbx, rbp, rsp, r12 - r15 */
|
||||||
/* preserve r11 because it's generally used to hold pointers to functions */
|
/* preserve r11 because it's generally used to hold pointers to functions */
|
||||||
static const uae_u8 need_to_preserve[]={0,0,0,1,0,1,0,0,0,0,0,1,1,1,1,1};
|
static const uae_u8 need_to_preserve[]={0,0,0,1,0,1,0,0,0,0,0,1,1,1,1,1};
|
||||||
#else
|
#else
|
||||||
static const uae_u8 need_to_preserve[]={1,1,1,1,0,1,1,1};
|
/* callee-saved registers as defined by System V IA-32 ABI: edi, esi, ebx, ebp */
|
||||||
|
static const uae_u8 need_to_preserve[]={0,0,0,1,0,1,1,1};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Whether classes of instructions do or don't clobber the native flags */
|
/* Whether classes of instructions do or don't clobber the native flags */
|
||||||
|
Loading…
Reference in New Issue
Block a user