1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-30 06:50:31 +02:00

Avoid inline assembly in VM when using Clang

Clang uses a different format for inline assembly.  Also, as noted
in the comment, this register usage is likely moot.

* libguile/vm-engine.c (JT_REG)[__GNUC__ && !__clang __]: define to empty
This commit is contained in:
Michael Gran 2023-07-17 14:50:41 -07:00
parent 58723e026a
commit b9a40cdc18

View file

@ -73,7 +73,7 @@
compilation failures. It can be revived if it's useful, but my naive compilation failures. It can be revived if it's useful, but my naive
hope is that simply annotating the locals with "register" will be a hope is that simply annotating the locals with "register" will be a
sufficient hint to the compiler. */ sufficient hint to the compiler. */
#ifdef __GNUC__ #if defined(__GNUC__) && ! defined(__clang__)
# if defined __x86_64__ # if defined __x86_64__
/* GCC 4.6 chooses %rbp for IP_REG and %rbx for SP_REG, which works /* GCC 4.6 chooses %rbp for IP_REG and %rbx for SP_REG, which works
well. Tell it to keep the jump table in a r12, which is well. Tell it to keep the jump table in a r12, which is