php-internal-docs 8.4.8
Unofficial docs for php/php-src
Loading...
Searching...
No Matches
sccp.c File Reference

Go to the source code of this file.

Data Structures

struct  _sccp_ctx
 

Macros

#define SCP_DEBUG   0
 
#define TOP   ((uint8_t)-1)
 
#define BOT   ((uint8_t)-2)
 
#define PARTIAL_ARRAY   ((uint8_t)-3)
 
#define PARTIAL_OBJECT   ((uint8_t)-4)
 
#define IS_TOP(zv)
 
#define IS_BOT(zv)
 
#define IS_PARTIAL_ARRAY(zv)
 
#define IS_PARTIAL_OBJECT(zv)
 
#define MAKE_PARTIAL_ARRAY(zv)
 
#define MAKE_PARTIAL_OBJECT(zv)
 
#define MAKE_TOP(zv)
 
#define MAKE_BOT(zv)
 
#define SET_RESULT(op, zv)
 
#define SET_RESULT_BOT(op)
 
#define SET_RESULT_TOP(op)
 
#define SKIP_IF_TOP(op)
 

Typedefs

typedef struct _sccp_ctx sccp_ctx
 

Functions

int sccp_optimize_op_array (zend_optimizer_ctx *ctx, zend_op_array *op_array, zend_ssa *ssa, zend_call_info **call_map)
 

Macro Definition Documentation

◆ BOT

#define BOT   ((uint8_t)-2)

Definition at line 87 of file sccp.c.

◆ IS_BOT

#define IS_BOT ( zv)
Value:
zval * zv
Definition ffi.c:3975
#define BOT
Definition sccp.c:87
#define Z_TYPE_P(zval_p)
Definition zend_types.h:660

Definition at line 91 of file sccp.c.

◆ IS_PARTIAL_ARRAY

#define IS_PARTIAL_ARRAY ( zv)
Value:
#define PARTIAL_ARRAY
Definition sccp.c:88

Definition at line 92 of file sccp.c.

◆ IS_PARTIAL_OBJECT

#define IS_PARTIAL_OBJECT ( zv)
Value:
#define PARTIAL_OBJECT
Definition sccp.c:89

Definition at line 93 of file sccp.c.

◆ IS_TOP

#define IS_TOP ( zv)
Value:
#define TOP
Definition sccp.c:86

Definition at line 90 of file sccp.c.

◆ MAKE_BOT

#define MAKE_BOT ( zv)
Value:
#define Z_TYPE_INFO_P(zval_p)
Definition zend_types.h:669

Definition at line 99 of file sccp.c.

◆ MAKE_PARTIAL_ARRAY

#define MAKE_PARTIAL_ARRAY ( zv)
Value:
#define IS_TYPE_REFCOUNTED
Definition zend_types.h:793
#define Z_TYPE_FLAGS_SHIFT
Definition zend_types.h:704

Definition at line 95 of file sccp.c.

◆ MAKE_PARTIAL_OBJECT

#define MAKE_PARTIAL_OBJECT ( zv)
Value:

Definition at line 96 of file sccp.c.

◆ MAKE_TOP

#define MAKE_TOP ( zv)
Value:

Definition at line 98 of file sccp.c.

◆ PARTIAL_ARRAY

#define PARTIAL_ARRAY   ((uint8_t)-3)

Definition at line 88 of file sccp.c.

◆ PARTIAL_OBJECT

#define PARTIAL_OBJECT   ((uint8_t)-4)

Definition at line 89 of file sccp.c.

◆ SCP_DEBUG

#define SCP_DEBUG   0

Definition at line 76 of file sccp.c.

◆ SET_RESULT

#define SET_RESULT ( op,
zv )
Value:
do { \
if (ssa_op->op##_def >= 0) { \
set_value(scdf, ctx, ssa_op->op##_def, zv); \
} \
} while (0)

Definition at line 863 of file sccp.c.

◆ SET_RESULT_BOT

#define SET_RESULT_BOT ( op)
Value:
SET_RESULT(op, &ctx->bot)
#define SET_RESULT(op, zv)
Definition sccp.c:863

Definition at line 868 of file sccp.c.

◆ SET_RESULT_TOP

#define SET_RESULT_TOP ( op)
Value:
SET_RESULT(op, &ctx->top)

Definition at line 869 of file sccp.c.

◆ SKIP_IF_TOP

#define SKIP_IF_TOP ( op)
Value:
if (IS_TOP(op)) return;
#define IS_TOP(zv)
Definition sccp.c:90

Definition at line 871 of file sccp.c.

◆ TOP

#define TOP   ((uint8_t)-1)

Definition at line 86 of file sccp.c.

Typedef Documentation

◆ sccp_ctx

typedef struct _sccp_ctx sccp_ctx

Function Documentation

◆ sccp_optimize_op_array()

int sccp_optimize_op_array ( zend_optimizer_ctx * ctx,
zend_op_array * op_array,
zend_ssa * ssa,
zend_call_info ** call_map )

Definition at line 2469 of file sccp.c.