mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-05-21 20:20:24 +02:00
Fix inline asm of VM numerical operations for x32.
* libguile/vm-i-scheme.c (_CX): Choose register size based on 'SIZEOF_VOID_P' instead of '__x86_64__'.
This commit is contained in:
parent
e1d7a93bb2
commit
f07fa85150
1 changed files with 4 additions and 2 deletions
|
@ -236,10 +236,12 @@ VM_DEFINE_FUNCTION (149, ge, "ge?", 2)
|
|||
#if SCM_GNUC_PREREQ (4, 5) && (defined __x86_64__ || defined __i386__)
|
||||
|
||||
# undef _CX
|
||||
# ifdef __x86_64__
|
||||
# if SIZEOF_VOID_P == 8
|
||||
# define _CX "rcx"
|
||||
# else
|
||||
# elif SIZEOF_VOID_P == 4
|
||||
# define _CX "ecx"
|
||||
# else
|
||||
# error unsupported word size
|
||||
# endif
|
||||
|
||||
/* The macros below check the CPU's overflow flag to improve fixnum
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue