Disable "red zone" usage (it leads to crashes).

This commit is contained in:
Dmitry Stogov 2021-04-26 22:34:02 +03:00
parent 57f2fe44c6
commit 997374f41c
3 changed files with 3 additions and 3 deletions

View file

@ -2361,7 +2361,7 @@ function gen_vm_opcodes_header(
} }
$str .= "\n"; $str .= "\n";
$str .= "#if (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID) && !defined(__SANITIZE_ADDRESS__)\n"; $str .= "#if (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID) && !defined(__SANITIZE_ADDRESS__)\n";
$str .= "# if ((defined(i386) && !defined(__PIC__)) || defined(__x86_64__) || defined(_M_X64) || defined (__aarch64__))\n"; $str .= "# if ((defined(i386) && !defined(__PIC__)) || defined(__x86_64__) || defined(_M_X64))\n";
$str .= "# define ZEND_VM_HYBRID_JIT_RED_ZONE_SIZE 16\n"; $str .= "# define ZEND_VM_HYBRID_JIT_RED_ZONE_SIZE 16\n";
$str .= "# endif\n"; $str .= "# endif\n";
$str .= "#endif\n"; $str .= "#endif\n";

View file

@ -35,7 +35,7 @@
#endif #endif
#if (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID) && !defined(__SANITIZE_ADDRESS__) #if (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID) && !defined(__SANITIZE_ADDRESS__)
# if ((defined(i386) && !defined(__PIC__)) || defined(__x86_64__) || defined(_M_X64) || defined (__aarch64__)) # if ((defined(i386) && !defined(__PIC__)) || defined(__x86_64__) || defined(_M_X64))
# define ZEND_VM_HYBRID_JIT_RED_ZONE_SIZE 16 # define ZEND_VM_HYBRID_JIT_RED_ZONE_SIZE 16
# endif # endif
#endif #endif

View file

@ -86,7 +86,7 @@
|.define ZREG_TMP4, ZREG_X14 |.define ZREG_TMP4, ZREG_X14
|.define ZREG_FPTMP, ZREG_V16 |.define ZREG_FPTMP, ZREG_V16
|.define HYBRID_SPAD, #16 // padding for stack alignment |.define HYBRID_SPAD, #32 // padding for stack alignment
#define SPAD 0x20 #define SPAD 0x20
#define NR_SPAD 0x30 #define NR_SPAD 0x30