xref: /php-src/ext/opcache/jit/ir/ir_php.h (revision caf102df)
1 /*
2  * IR - Lightweight JIT Compilation Framework
3  * (IR/PHP integration)
4  * Copyright (C) 2022 Zend by Perforce.
5  * Authors: Dmitry Stogov <dmitry@php.net>
6  */
7 
8 #ifndef IR_PHP_H
9 #define IR_PHP_H
10 
11 #define IR_PHP_OPS(_)
12 
13 
14 #define IR_SNAPSHOT_HANDLER_DCL() \
15 	void *zend_jit_snapshot_handler(ir_ctx *ctx, ir_ref snapshot_ref, ir_insn *snapshot, void *addr)
16 
17 #define IR_SNAPSHOT_HANDLER(ctx, ref, insn, addr) \
18 	zend_jit_snapshot_handler(ctx, ref, insn, addr)
19 
20 #ifndef IR_PHP_MM
21 # define IR_PHP_MM 1
22 #endif
23 
24 #if IR_PHP_MM
25 # include "zend.h"
26 
27 # define ir_mem_malloc  emalloc
28 # define ir_mem_calloc  ecalloc
29 # define ir_mem_realloc erealloc
30 # define ir_mem_free    efree
31 #endif
32 
33 #if defined(IR_TARGET_AARCH64)
34 # define IR_EXTERNAL_GDB_ENTRY
35 #endif
36 
37 #endif /* IR_PHP_H */
38