2022-11-08 09:32:46 +01:00
|
|
|
/*
|
|
|
|
* IR - Lightweight JIT Compilation Framework
|
|
|
|
* (IR/PHP integration)
|
|
|
|
* Copyright (C) 2022 Zend by Perforce.
|
|
|
|
* Authors: Dmitry Stogov <dmitry@php.net>
|
|
|
|
*/
|
|
|
|
|
2022-06-09 23:16:29 +02:00
|
|
|
#ifndef IR_PHP_H
|
|
|
|
#define IR_PHP_H
|
|
|
|
|
2022-06-16 22:49:27 +02:00
|
|
|
#define IR_PHP_OPS(_)
|
2022-06-09 23:16:29 +02:00
|
|
|
|
2022-10-21 16:16:25 +02:00
|
|
|
|
|
|
|
#define IR_SNAPSHOT_HANDLER_DCL() \
|
|
|
|
void *zend_jit_snapshot_handler(ir_ctx *ctx, ir_ref snapshot_ref, ir_insn *snapshot, void *addr)
|
|
|
|
|
|
|
|
#define IR_SNAPSHOT_HANDLER(ctx, ref, insn, adr) \
|
|
|
|
zend_jit_snapshot_handler(ctx, ref, insn, addr)
|
|
|
|
|
2022-09-06 23:04:02 +02:00
|
|
|
#ifndef IR_PHP_MM
|
|
|
|
# define IR_PHP_MM 1
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#if IR_PHP_MM
|
|
|
|
# include "zend.h"
|
|
|
|
|
|
|
|
# define ir_mem_malloc emalloc
|
|
|
|
# define ir_mem_calloc ecalloc
|
|
|
|
# define ir_mem_realloc erealloc
|
|
|
|
# define ir_mem_free efree
|
|
|
|
#endif
|
2022-08-10 16:41:14 +02:00
|
|
|
|
2022-09-29 16:10:32 +02:00
|
|
|
#if defined(IR_TARGET_AARCH64)
|
|
|
|
# define IR_EXTERNAL_GDB_ENTRY
|
|
|
|
#endif
|
2022-09-29 00:28:30 +02:00
|
|
|
|
2022-06-09 23:16:29 +02:00
|
|
|
#endif /* IR_PHP_H */
|