Ticket #326: xcache_specs_54.patch

File xcache_specs_54.patch, 11.6 KB (added by drakmor, 11 months ago)
Line 
1diff -cr xcache.old/xc_opcode_spec.h xcache/xc_opcode_spec.h
2*** xcache.old/xc_opcode_spec.h 2013-06-18 06:45:50.000000000 +0400
3--- xcache/xc_opcode_spec.h 2013-09-15 00:59:59.578125000 +0400
4***************
5*** 25,31 ****
6    OPSPEC(BRK) \
7    OPSPEC(CONT) \
8    OPSPEC(INCLUDE) \
9!   OPSPEC(ASSIGN)
10 
11  #define OPSPECS_DEF_ENUM(name) OPSPEC_##name,
12  typedef enum { OPSPECS(OPSPECS_DEF_ENUM) OPSPEC_DUMMY } xc_op_spec_t;
13--- 25,33 ----
14    OPSPEC(BRK) \
15    OPSPEC(CONT) \
16    OPSPEC(INCLUDE) \
17!   OPSPEC(ASSIGN) \
18!   OPSPEC(FETCHTYPE)
19!
20 
21  #define OPSPECS_DEF_ENUM(name) OPSPEC_##name,
22  typedef enum { OPSPECS(OPSPECS_DEF_ENUM) OPSPEC_DUMMY } xc_op_spec_t;
23diff -cr xcache.old/xc_opcode_spec_def.h xcache/xc_opcode_spec_def.h
24*** xcache.old/xc_opcode_spec_def.h 2013-06-18 06:45:50.000000000 +0400
25--- xcache/xc_opcode_spec_def.h 2013-09-15 03:11:44.890625000 +0400
26***************
27*** 111,119 ****
28--- 111,124 ----
29    OPSPEC(       BIT,        STD,        STD,        TMP) /* 71 INIT_ARRAY                     */
30    OPSPEC(       BIT,        STD,        STD,        TMP) /* 72 ADD_ARRAY_ELEMENT              */
31    OPSPEC(    UNUSED,        STD,    INCLUDE,        VAR) /* 73 INCLUDE_OR_EVAL                */
32+
33  #ifdef ZEND_ENGINE_2_1
34    /* php 5.1 and up */
35+ # ifdef ZEND_ENGINE_2_4
36+   OPSPEC( FETCHTYPE,        STD,        STD,     UNUSED) /* 74 UNSET_VAR                      */
37+ # else
38    OPSPEC(    UNUSED,        STD,      FETCH,     UNUSED) /* 74 UNSET_VAR                      */
39+ # endif
40    OPSPEC(       STD,        STD,        STD,     UNUSED) /* 75 UNSET_DIM                      */
41    OPSPEC(       STD,        STD,        STD,     UNUSED) /* 76 UNSET_OBJ                      */
42    OPSPEC(       BIT,        STD,     OPLINE,        VAR) /* 77 FE_RESET                       */
43***************
44*** 127,148 ****
45  #endif
46    OPSPEC(        FE,        STD,     OPLINE,        TMP) /* 78 FE_FETCH                       */
47    OPSPEC(    UNUSED,        STD,     UNUSED,     UNUSED) /* 79 EXIT                           */
48    OPSPEC(    UNUSED,        STD,      FETCH,        VAR) /* 80 FETCH_R                        */
49    OPSPEC(     FETCH,        VAR,        STD,        VAR) /* 81 FETCH_DIM_R                    */
50    OPSPEC(    UNUSED,      VAR_2,        STD,        VAR) /* 82 FETCH_OBJ_R                    */
51    OPSPEC(    UNUSED,        STD,      FETCH,        VAR) /* 83 FETCH_W                        */
52    OPSPEC(    UNUSED,        VAR,        STD,        VAR) /* 84 FETCH_DIM_W                    */
53    OPSPEC(    UNUSED,      VAR_2,        STD,        VAR) /* 85 FETCH_OBJ_W                    */
54!   OPSPEC(    UNUSED,        STD,      FETCH,        VAR) /* 86 FETCH_RW                       */
55    OPSPEC(    UNUSED,        VAR,        STD,        VAR) /* 87 FETCH_DIM_RW                   */
56    OPSPEC(    UNUSED,      VAR_2,        STD,        VAR) /* 88 FETCH_OBJ_RW                   */
57    OPSPEC(    UNUSED,        STD,      FETCH,        VAR) /* 89 FETCH_IS                       */
58    OPSPEC(    UNUSED,        VAR,        STD,        VAR) /* 90 FETCH_DIM_IS                   */
59    OPSPEC(    UNUSED,      VAR_2,        STD,        VAR) /* 91 FETCH_OBJ_IS                   */
60    OPSPEC(       ARG,        STD,      FETCH,        VAR) /* 92 FETCH_FUNC_ARG                 */
61    OPSPEC(       ARG,        VAR,        STD,        VAR) /* 93 FETCH_DIM_FUNC_ARG             */
62    OPSPEC(       ARG,      VAR_2,        STD,        VAR) /* 94 FETCH_OBJ_FUNC_ARG             */
63    OPSPEC(    UNUSED,        STD,      FETCH,        VAR) /* 95 FETCH_UNSET                    */
64    OPSPEC(    UNUSED,        VAR,        STD,        VAR) /* 96 FETCH_DIM_UNSET                */
65    OPSPEC(    UNUSED,      VAR_2,        STD,        VAR) /* 97 FETCH_OBJ_UNSET                */
66    OPSPEC(    UNUSED,        STD,        STD,        VAR) /* 98 FETCH_DIM_TMP_VAR              */
67--- 132,177 ----
68  #endif
69    OPSPEC(        FE,        STD,     OPLINE,        TMP) /* 78 FE_FETCH                       */
70    OPSPEC(    UNUSED,        STD,     UNUSED,     UNUSED) /* 79 EXIT                           */
71+ #ifdef ZEND_ENGINE_2_4
72+   OPSPEC( FETCHTYPE,        STD,        STD,        VAR) /* 80 FETCH_R                        */
73+ #else
74    OPSPEC(    UNUSED,        STD,      FETCH,        VAR) /* 80 FETCH_R                        */
75+ #endif
76    OPSPEC(     FETCH,        VAR,        STD,        VAR) /* 81 FETCH_DIM_R                    */
77    OPSPEC(    UNUSED,      VAR_2,        STD,        VAR) /* 82 FETCH_OBJ_R                    */
78+ #ifdef ZEND_ENGINE_2_4
79+   OPSPEC( FETCHTYPE,        STD,        STD,        VAR) /* 83 FETCH_W                        */
80+ #else
81    OPSPEC(    UNUSED,        STD,      FETCH,        VAR) /* 83 FETCH_W                        */
82+ #endif
83    OPSPEC(    UNUSED,        VAR,        STD,        VAR) /* 84 FETCH_DIM_W                    */
84    OPSPEC(    UNUSED,      VAR_2,        STD,        VAR) /* 85 FETCH_OBJ_W                    */
85! #ifdef ZEND_ENGINE_2_4
86!   OPSPEC( FETCHTYPE,        STD,        STD,        VAR) /* 86 FETCH_RW                        */
87! #else
88!   OPSPEC(    UNUSED,        STD,      FETCH,        VAR) /* 86 FETCH_RW                        */
89! #endif
90    OPSPEC(    UNUSED,        VAR,        STD,        VAR) /* 87 FETCH_DIM_RW                   */
91    OPSPEC(    UNUSED,      VAR_2,        STD,        VAR) /* 88 FETCH_OBJ_RW                   */
92+ #ifdef ZEND_ENGINE_2_4
93+   OPSPEC( FETCHTYPE,        STD,        STD,        VAR) /* 89 FETCH_IS                        */
94+ #else
95    OPSPEC(    UNUSED,        STD,      FETCH,        VAR) /* 89 FETCH_IS                       */
96+ #endif
97    OPSPEC(    UNUSED,        VAR,        STD,        VAR) /* 90 FETCH_DIM_IS                   */
98    OPSPEC(    UNUSED,      VAR_2,        STD,        VAR) /* 91 FETCH_OBJ_IS                   */
99+ #ifdef ZEND_ENGINE_2_4
100+   OPSPEC(       ARG,        STD,        STD,        VAR) /* 92 FETCH_FUNC_ARG                 */
101+ #else
102    OPSPEC(       ARG,        STD,      FETCH,        VAR) /* 92 FETCH_FUNC_ARG                 */
103+ #endif
104    OPSPEC(       ARG,        VAR,        STD,        VAR) /* 93 FETCH_DIM_FUNC_ARG             */
105    OPSPEC(       ARG,      VAR_2,        STD,        VAR) /* 94 FETCH_OBJ_FUNC_ARG             */
106+ #ifdef ZEND_ENGINE_2_4
107+   OPSPEC( FETCHTYPE,        STD,        STD,        VAR) /* 95 FETCH_UNSET                    */
108+ #else
109    OPSPEC(    UNUSED,        STD,      FETCH,        VAR) /* 95 FETCH_UNSET                    */
110+ #endif
111    OPSPEC(    UNUSED,        VAR,        STD,        VAR) /* 96 FETCH_DIM_UNSET                */
112    OPSPEC(    UNUSED,      VAR_2,        STD,        VAR) /* 97 FETCH_OBJ_UNSET                */
113    OPSPEC(    UNUSED,        STD,        STD,        VAR) /* 98 FETCH_DIM_TMP_VAR              */
114***************
115*** 165,171 ****
116--- 194,204 ----
117    OPSPEC(    UNUSED,        STD,     UNUSED,     UNUSED) /* 105 TICKS                          */
118    OPSPEC(SEND_NOREF,        VAR,        ARG,     UNUSED) /* 106 SEND_VAR_NO_REF                */
119  #ifdef ZEND_ENGINE_2
120+ # ifdef ZEND_ENGINE_2_4
121+   OPSPEC(    OPLINE,       STD,         STD,     UNUSED) /* 107 CATCH                          */
122+ # else
123    OPSPEC(    OPLINE,      CLASS,        STD,     UNUSED) /* 107 CATCH                          */
124+ # endif
125    OPSPEC(    UNUSED,        STD,     OPLINE,     UNUSED) /* 108 THROW                          */
126    OPSPEC(    FCLASS,        STD,        STD,      CLASS) /* 109 FETCH_CLASS                    */
127    OPSPEC(    UNUSED,        STD,     UNUSED,        VAR) /* 110 CLONE                          */
128***************
129*** 177,188 ****
130  #endif
131 
132    OPSPEC(    UNUSED,        STD,        STD,        VAR) /* 112 INIT_METHOD_CALL               */
133! # ifdef ZEND_ENGINE_2_3
134    OPSPEC(    UNUSED,        STD,        STD,     UNUSED) /* 113 INIT_STATIC_METHOD_CALL        */
135! # else
136    OPSPEC(    UNUSED,     UCLASS,        STD,     UNUSED) /* 113 INIT_STATIC_METHOD_CALL        */
137! # endif
138    OPSPEC(     ISSET,        STD,      FETCH,        TMP) /* 114 ISSET_ISEMPTY_VAR              */
139    OPSPEC(     ISSET,        STD,        STD,        TMP) /* 115 ISSET_ISEMPTY_DIM_OBJ          */
140 
141    OPSPEC(    UNUSED,      CLASS,        STD,     UNUSED) /* 116 IMPORT_FUNCTION                */
142--- 210,225 ----
143  #endif
144 
145    OPSPEC(    UNUSED,        STD,        STD,        VAR) /* 112 INIT_METHOD_CALL               */
146! #ifdef ZEND_ENGINE_2_3
147    OPSPEC(    UNUSED,        STD,        STD,     UNUSED) /* 113 INIT_STATIC_METHOD_CALL        */
148! #else
149    OPSPEC(    UNUSED,     UCLASS,        STD,     UNUSED) /* 113 INIT_STATIC_METHOD_CALL        */
150! #endif
151! #ifdef ZEND_ENGINE_2_4   
152!   OPSPEC(     ISSET,        STD,        STD,        TMP) /* 114 ISSET_ISEMPTY_VAR              */
153! #else
154    OPSPEC(     ISSET,        STD,      FETCH,        TMP) /* 114 ISSET_ISEMPTY_VAR              */
155+ #endif
156    OPSPEC(     ISSET,        STD,        STD,        TMP) /* 115 ISSET_ISEMPTY_DIM_OBJ          */
157 
158    OPSPEC(    UNUSED,      CLASS,        STD,     UNUSED) /* 116 IMPORT_FUNCTION                */
159***************
160*** 233,249 ****
161    OPSPEC(     ISSET,        STD,        STD,        TMP) /* 148 ISSET_ISEMPTY_PROP_OBJ         */
162    OPSPEC(       STD,     UNUSED,     UNUSED,        STD) /* 149 HANDLE_EXCEPTION               */
163    OPSPEC(       STD,     UNUSED,     UNUSED,        STD) /* 150 USER_OPCODE                    */
164! # ifdef ZEND_ENGINE_2_3
165    OPSPEC(    UNUSED,     UNUSED,     UNUSED,     UNUSED) /* 151 UNDEF                          */
166    OPSPEC(    UNUSED,        STD,    JMPADDR,        TMP) /* 152 JMP_SET                        */
167    OPSPEC(    UNUSED,        STD,        STD,        TMP) /* 153 DECLARE_LAMBDA_FUNCTION        */
168! #  ifdef ZEND_ENGINE_2_4
169!   OPSPEC(    UNUSED,     UNUSED,     UNUSED,     UNUSED) /* 154 ADD_TRAIT                      */
170!   OPSPEC(    UNUSED,     UNUSED,     UNUSED,     UNUSED) /* 155 BIND_TRAITS                    */
171!   OPSPEC(    UNUSED,     UNUSED,     UNUSED,     UNUSED) /* 156 SEPARATE                       */
172!   OPSPEC(    UNUSED,     UNUSED,     UNUSED,     UNUSED) /* 157 QM_ASSIGN_VAR                  */
173!   OPSPEC(    UNUSED,     UNUSED,     UNUSED,     UNUSED) /* 158 JMP_SET_VAR                    */
174! #  endif
175  # else
176    OPSPEC(    UNUSED,     UNUSED,     UNUSED,     UNUSED) /* 151 UNDEF                          */
177    OPSPEC(    UNUSED,     UNUSED,     UNUSED,     UNUSED) /* 152 UNDEF                          */
178--- 270,286 ----
179    OPSPEC(     ISSET,        STD,        STD,        TMP) /* 148 ISSET_ISEMPTY_PROP_OBJ         */
180    OPSPEC(       STD,     UNUSED,     UNUSED,        STD) /* 149 HANDLE_EXCEPTION               */
181    OPSPEC(       STD,     UNUSED,     UNUSED,        STD) /* 150 USER_OPCODE                    */
182! #ifdef ZEND_ENGINE_2_3
183    OPSPEC(    UNUSED,     UNUSED,     UNUSED,     UNUSED) /* 151 UNDEF                          */
184    OPSPEC(    UNUSED,        STD,    JMPADDR,        TMP) /* 152 JMP_SET                        */
185    OPSPEC(    UNUSED,        STD,        STD,        TMP) /* 153 DECLARE_LAMBDA_FUNCTION        */
186! # ifdef ZEND_ENGINE_2_4
187!   OPSPEC(    FCLASS,        STD,        STD,     UNUSED) /* 154 ADD_TRAIT                      */
188!   OPSPEC(    UNUSED,        STD,     UNUSED,     UNUSED) /* 155 BIND_TRAITS                    */
189!   OPSPEC(    UNUSED,        STD,        STD,        STD) /* 156 SEPARATE                       */
190!   OPSPEC(    UNUSED,        STD,     UNUSED,        VAR) /* 157 QM_ASSIGN_VAR                  */
191!   OPSPEC(    UNUSED,        STD,        STD,        VAR) /* 158 JMP_SET_VAR                    */
192! # endif
193  # else
194    OPSPEC(    UNUSED,     UNUSED,     UNUSED,     UNUSED) /* 151 UNDEF                          */
195    OPSPEC(    UNUSED,     UNUSED,     UNUSED,     UNUSED) /* 152 UNDEF                          */